@import '_content/InstituteOfHumanAnatomy.Shared/InstituteOfHumanAnatomy.Shared.a9c64sl2sg.bundle.scp.css';

/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
/* Each message shows only in its state; blazor.web.js puts the state classes on the
   dialog itself. */
.components-reconnect-first-attempt-visible[b-njf6kt1pbp],
.components-reconnect-repeated-attempt-visible[b-njf6kt1pbp],
.components-reconnect-failed-visible[b-njf6kt1pbp],
.components-pause-visible[b-njf6kt1pbp],
.components-resume-failed-visible[b-njf6kt1pbp] {
    display: none;
}

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

/* A bottom sheet on phones, a card on wider screens. It fades in only after a beat
   (the delay below), so a one-second blip never flashes anything. */
#components-reconnect-modal[b-njf6kt1pbp] {
    box-sizing: border-box;
    width: min(100% - 32px, 380px);
    margin: auto auto max(16px, env(safe-area-inset-bottom, 0px));
    padding: 0;
    border: 1px solid var(--ioha-line, #2a2a33);
    border-radius: var(--r-lg, 20px);
    background: var(--ioha-surface-1, #141418);
    color: var(--ioha-bone, #f2efec);
    box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .8);
    font-family: var(--font-body, Manrope), system-ui, sans-serif;
}
/* showModal() focuses the dialog itself; the ring belongs on the button, not the sheet. */
#components-reconnect-modal:focus[b-njf6kt1pbp],
#components-reconnect-modal:focus-visible[b-njf6kt1pbp] { outline: none; }
#components-reconnect-modal[open][b-njf6kt1pbp] {
    animation: rc-in-b-njf6kt1pbp var(--dur-4, 500ms) var(--ease-out, cubic-bezier(.05, .7, .1, 1)) 600ms both;
}
#components-reconnect-modal[b-njf6kt1pbp]::backdrop {
    background: rgba(5, 5, 7, .55);
    backdrop-filter: blur(2px);
    animation: rc-fade-b-njf6kt1pbp var(--dur-3, 320ms) ease 600ms both;
}

@media (min-width: 600px) {
    #components-reconnect-modal[b-njf6kt1pbp] { margin: auto; }
}

.rc[b-njf6kt1pbp] {
    display: grid;
    justify-items: center;
    gap: 6px;
    padding: 24px 22px 22px;
    text-align: center;
}
.rc-title[b-njf6kt1pbp] {
    margin: 10px 0 0;
    font: 900 20px/1.15 var(--font-display, Archivo), Manrope, sans-serif;
    letter-spacing: -.02em;
}
.rc-sub[b-njf6kt1pbp] {
    margin: 6px 0 0;
    font-size: 15px;
    line-height: 1.5;
    color: var(--ioha-bone-dim, #c9c4be);
}
.rc-btn[b-njf6kt1pbp] {
    width: 100%;
    min-height: 48px;
    margin-top: 16px;
    border: 0;
    border-radius: var(--r-md, 14px);
    background: var(--ioha-red, #e0392b);
    color: #fff;
    font: 800 16px var(--font-body, Manrope), sans-serif;
    cursor: pointer;
}
.rc-btn:active[b-njf6kt1pbp] { transform: scale(.97); }
.rc-btn:focus-visible[b-njf6kt1pbp] { outline: 2px solid var(--ioha-focus, #ff6a5a); outline-offset: 3px; }

.rc-pulse[b-njf6kt1pbp] {
    position: relative;
    width: 44px;
    height: 44px;
}
.rc-pulse span[b-njf6kt1pbp],
.rc-pulse[b-njf6kt1pbp]::before {
    content: "";
    position: absolute;
    border-radius: 50%;
}
.rc-pulse span[b-njf6kt1pbp] { inset: 13px; background: var(--ioha-red, #e0392b); }
.rc-pulse[b-njf6kt1pbp]::before {
    inset: 0;
    background: rgba(224, 57, 43, .3);
    animation: rc-ping-b-njf6kt1pbp 1.4s var(--ease-out, ease-out) infinite;
}

/* Pulsing means "working on it"; once it has given up, hold still. */
#components-reconnect-modal.components-reconnect-failed .rc-pulse[b-njf6kt1pbp]::before,
#components-reconnect-modal.components-reconnect-resume-failed .rc-pulse[b-njf6kt1pbp]::before { animation: none; opacity: 0; }

@keyframes rc-in-b-njf6kt1pbp {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: none; }
}
@keyframes rc-fade-b-njf6kt1pbp {
    from { opacity: 0; }
    to { opacity: 1; }
}
@keyframes rc-ping-b-njf6kt1pbp {
    from { transform: scale(.5); opacity: 1; }
    to { transform: scale(1.1); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
    #components-reconnect-modal[open][b-njf6kt1pbp],
    #components-reconnect-modal[b-njf6kt1pbp]::backdrop,
    .rc-pulse[b-njf6kt1pbp]::before { animation: none; }
    .rc-btn:active[b-njf6kt1pbp] { transform: none; }
}
/* /Components/Pages/Error.razor.rz.scp.css */
.er[b-0gxibpaljc] {
    min-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    padding: var(--s-6, 24px) var(--s-4, 16px) var(--s-8, 48px);
    background: var(--ioha-ink, #0b0b0d);
    color: var(--ioha-bone, #f2efec);
    font-family: var(--font-body, Manrope), "Segoe UI", system-ui, sans-serif;
}
.er-brand[b-0gxibpaljc] { display: flex; align-items: baseline; gap: 7px; text-decoration: none; }
.er-brand-mark[b-0gxibpaljc] { font: 900 20px var(--font-display, Archivo), Manrope, sans-serif; color: var(--ioha-bone, #f2efec); }
.er-brand-sub[b-0gxibpaljc] { font: 800 10px var(--font-body, Manrope), sans-serif; letter-spacing: .18em; text-transform: uppercase; color: var(--ioha-red, #e0392b); }
.er-card[b-0gxibpaljc] { width: 100%; max-width: 420px; margin: auto; text-align: center; }
.er-title[b-0gxibpaljc] { margin: 0; font: 900 clamp(28px, 7vw, 36px)/1.05 var(--font-display, Archivo), Manrope, sans-serif; letter-spacing: -.03em; }
.er-lede[b-0gxibpaljc] { margin: 16px 0 0; font-size: 17px; line-height: 1.55; color: var(--ioha-bone-dim, #c9c4be); }
.er-actions[b-0gxibpaljc] { display: flex; flex-direction: column; gap: 12px; margin-top: 28px; }
.er-btn[b-0gxibpaljc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    border-radius: var(--r-md, 14px);
    font: 800 17px var(--font-body, Manrope), sans-serif;
    text-decoration: none;
}
.er-btn-primary[b-0gxibpaljc] { background: var(--ioha-red, #e0392b); color: #fff; }
.er-btn-ghost[b-0gxibpaljc] { border: 1px solid var(--ioha-line, #34343e); color: var(--ioha-bone, #f2efec); }
.er-btn:focus-visible[b-0gxibpaljc] { outline: 2px solid var(--ioha-focus, #ff6a5a); outline-offset: 3px; }
.er-ref[b-0gxibpaljc] { margin: 24px 0 0; font-size: 13px; color: var(--ioha-muted, #8d8892); }
.er-ref code[b-0gxibpaljc] { font-size: 12px; word-break: break-all; }
/* /Components/Pages/Landing.razor.rz.scp.css */
/* Landing page. Mobile-first: written for a 390px phone arriving from YouTube, then
   widened at 600px and 900px.

   Colours, type and motion come from the global design tokens in the shared app.css.
   Each one is aliased once below with today's value as its fallback, so the page is
   correct with or without the token layer and follows it when the tokens change. */

.lp[b-gcxr5fbmsx] {
    --lp-ink: var(--ioha-ink, #0b0b0d);
    --lp-s1: var(--ioha-surface-1, #121216);
    --lp-s2: var(--ioha-surface-2, #1a1a21);
    --lp-line: var(--ioha-line, #26262e);
    --lp-bone: var(--ioha-bone, #f2efec);
    --lp-dim: var(--ioha-bone-dim, #c9c4be);
    --lp-muted: var(--ioha-muted, #9b9590);
    --lp-red: var(--ioha-red, #e0392b);
    --lp-red-hi: var(--ioha-red-bright, #ff6a5a);
    /* Behind white text: the app's own button red. White on --lp-red is 4.38:1, just
       under WCAG AA's 4.5:1 for text this size; on this one it is 5.1:1. */
    --lp-red-fill: var(--ioha-red-strong, #cf3123);
    --lp-focus: var(--ioha-focus, #ff6a5a);
    --lp-display: var(--font-display, Archivo), Archivo, "Arial Black", system-ui, sans-serif;
    --lp-body: var(--font-body, Manrope), Manrope, "Segoe UI", system-ui, sans-serif;
    --lp-ease: var(--ease-out, cubic-bezier(.05, .7, .1, 1));
    --lp-spring: var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1));

    position: relative;
    min-height: 100vh;
    background: var(--lp-ink);
    color: var(--lp-bone);
    font-family: var(--lp-body);
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    overflow-x: clip;
}

.lp a:focus-visible[b-gcxr5fbmsx],
.lp summary:focus-visible[b-gcxr5fbmsx] {
    outline: 2px solid var(--lp-focus);
    outline-offset: 3px;
    border-radius: 6px;
}

.lp-glow[b-gcxr5fbmsx] {
    position: absolute;
    inset: -18vh -30vw auto auto;
    width: 110vw;
    max-width: 1100px;
    height: 90vh;
    background: radial-gradient(closest-side, rgba(224, 57, 43, .22), rgba(224, 57, 43, 0));
    pointer-events: none;
}

.lp-wrap[b-gcxr5fbmsx] {
    position: relative;
    max-width: 1120px;
    margin: 0 auto;
    padding-left: 16px;
    padding-right: 16px;
}

/* ---- nav ---- */
.lp-nav[b-gcxr5fbmsx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: max(12px, env(safe-area-inset-top, 0px));
    padding-bottom: 12px;
}
.lp-brand[b-gcxr5fbmsx] { display: flex; align-items: baseline; gap: 7px; text-decoration: none; min-height: 44px; align-items: center; }
.lp-brand-mark[b-gcxr5fbmsx] { font: 900 20px var(--lp-display); letter-spacing: -.01em; color: var(--lp-bone); }
.lp-brand-sub[b-gcxr5fbmsx] { font: 800 10px var(--lp-body); letter-spacing: .18em; text-transform: uppercase; color: var(--lp-red-hi); }
.lp-nav-links[b-gcxr5fbmsx] { display: flex; align-items: center; gap: 6px; }
.lp-nav-link[b-gcxr5fbmsx] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 10px;
    color: var(--lp-dim);
    text-decoration: none;
    font-weight: 700;
    font-size: 15px;
    white-space: nowrap;
}
.lp-nav-link:hover[b-gcxr5fbmsx] { color: var(--lp-bone); }
.lp-nav-cta[b-gcxr5fbmsx] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 20px;
    border-radius: var(--r-pill, 999px);
    background: var(--lp-red-fill);
    color: #fff;
    font-weight: 800;
    font-size: 15px;
    text-decoration: none;
    transition: transform var(--dur-1, 120ms) var(--lp-ease), box-shadow var(--dur-2, 200ms);
}
/* Lit, not lightened: white on a lighter red would fall under 4.5:1 again. */
.lp-nav-cta:hover[b-gcxr5fbmsx] { box-shadow: var(--glow-red, 0 8px 28px rgba(224, 57, 43, .32)); }
.lp-nav-cta:active[b-gcxr5fbmsx] { transform: scale(.96); }
.lp-hide-sm[b-gcxr5fbmsx] { display: none; }

/* ---- type ---- */
.lp-eyebrow[b-gcxr5fbmsx] {
    margin: 0 0 14px;
    font: 800 12px var(--lp-body);
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--lp-red-hi);
}
.lp-h1[b-gcxr5fbmsx] {
    margin: 0;
    font: 900 clamp(42px, 11.2vw, 80px)/.95 var(--lp-display);
    letter-spacing: -.035em;
    text-wrap: balance;
}
.lp-h1 em[b-gcxr5fbmsx] { font-style: normal; color: var(--lp-red); }
.lp-h2[b-gcxr5fbmsx] {
    margin: 0 0 16px;
    font: 900 clamp(32px, 8.4vw, 52px)/1 var(--lp-display);
    letter-spacing: -.03em;
    text-wrap: balance;
}
.lp-lede[b-gcxr5fbmsx] {
    margin: 18px 0 0;
    max-width: 32em;
    font-size: clamp(17px, 1.6vw, 20px);
    line-height: 1.55;
    color: var(--lp-dim);
}

/* ---- buttons ---- */
.lp-btn[b-gcxr5fbmsx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 54px;
    padding: 0 26px;
    border-radius: var(--r-md, 14px);
    font: 800 17px var(--lp-body);
    text-decoration: none;
    transition: transform var(--dur-1, 120ms) var(--lp-ease), background var(--dur-2, 200ms), border-color var(--dur-2, 200ms), box-shadow var(--dur-2, 200ms);
    -webkit-tap-highlight-color: transparent;
}
.lp-btn:active[b-gcxr5fbmsx] { transform: scale(.97); }
.lp-btn-primary[b-gcxr5fbmsx] { background: var(--lp-red-fill); color: #fff; box-shadow: 0 10px 30px -10px rgba(224, 57, 43, .7); }
.lp-btn-primary:hover[b-gcxr5fbmsx] { box-shadow: 0 10px 34px -6px rgba(224, 57, 43, .85); }
.lp-btn-ghost[b-gcxr5fbmsx] { border: 1px solid var(--lp-line); color: var(--lp-bone); }
.lp-btn-ghost:hover[b-gcxr5fbmsx] { border-color: #5a5a66; }
.lp-btn-hero[b-gcxr5fbmsx] { min-height: 58px; font-size: 18px; }
.lp-arrow[b-gcxr5fbmsx] { display: inline-block; transition: transform var(--dur-2, 200ms) var(--lp-spring); }
.lp-btn:hover .lp-arrow[b-gcxr5fbmsx] { transform: translateX(4px); }

/* ---- phones ---- */
.lp-phone[b-gcxr5fbmsx] {
    position: relative;
    aspect-ratio: 1179 / 2556;
    border-radius: 13% / 6%;
    padding: 2.6%;
    background: linear-gradient(145deg, #2c2c34, #141418);
    box-shadow:
        0 0 0 1px #3a3a44 inset,
        0 40px 80px -30px rgba(0, 0, 0, .8),
        0 18px 40px -20px rgba(0, 0, 0, .6);
}
/* The captures start at the app's own header with no status bar, so the screen gets a
   status-bar-height band of background on top; without it the dynamic island sits on
   top of the IOHA wordmark and nav. The bottom of the capture is cropped instead. */
.lp-phone img[b-gcxr5fbmsx] {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding-top: 12%;
    object-fit: cover;
    object-position: top;
    border-radius: 11% / 5.2%;
    background: var(--lp-ink);
}
.lp-phone[b-gcxr5fbmsx]::after {
    content: "";
    position: absolute;
    top: 3.6%;
    left: 50%;
    width: 30%;
    height: 3.3%;
    transform: translateX(-50%);
    border-radius: 999px;
    background: #000;
}

/* ---- hero ---- */
.lp-hero[b-gcxr5fbmsx] {
    display: grid;
    gap: 32px;
    padding-top: 12px;
    padding-bottom: 56px;
}
.lp-hero-actions[b-gcxr5fbmsx] { display: flex; flex-direction: column; align-items: stretch; gap: 16px; margin-top: 26px; }
.lp-hero-actions .lp-btn-hero[b-gcxr5fbmsx] { width: 100%; animation: lp-glow-b-gcxr5fbmsx 3.2s ease-in-out 1.2s infinite; }

.lp-trust[b-gcxr5fbmsx] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px 18px;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 14px;
    font-weight: 700;
    color: var(--lp-dim);
}
.lp-trust li[b-gcxr5fbmsx] { display: inline-flex; align-items: center; gap: 6px; }
.lp-trust li[b-gcxr5fbmsx]::before {
    content: "";
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23ff6a5a' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round' d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.lp-hero-actions[b-gcxr5fbmsx]  .sb-soon,
.lp-hero-actions[b-gcxr5fbmsx]  .sb-row { justify-content: center; }

.lp-qr[b-gcxr5fbmsx] { display: none; }

.lp-hero-art[b-gcxr5fbmsx] { position: relative; display: flex; justify-content: center; }
.lp-phone-hero[b-gcxr5fbmsx] { display: none; }

/* ---- today's puzzle card ---- */
.lp-today[b-gcxr5fbmsx] {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 440px;
    box-sizing: border-box;
    padding: 14px;
    border: 1px solid var(--lp-line);
    border-radius: var(--r-lg, 22px);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, 0) 40%),
        var(--lp-s1);
    box-shadow: 0 30px 60px -28px rgba(0, 0, 0, .9), 0 0 0 1px rgba(255, 255, 255, .02) inset;
    color: var(--lp-bone);
    text-decoration: none;
    /* translate/scale rather than transform, so hover still works while the entrance
       animation (which owns transform) holds its end state. */
    transition: translate var(--dur-3, 320ms) var(--lp-spring), scale var(--dur-1, 120ms) var(--lp-ease), border-color var(--dur-2, 200ms);
}
.lp-today:hover[b-gcxr5fbmsx] { border-color: rgba(224, 57, 43, .55); translate: 0 -3px; }
.lp-today:active[b-gcxr5fbmsx] { scale: .985; }

.lp-today-head[b-gcxr5fbmsx] { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 2px 4px 12px; }
.lp-live[b-gcxr5fbmsx] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font: 800 12px var(--lp-body);
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--lp-bone);
}
.lp-live-dot[b-gcxr5fbmsx] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--lp-red);
    box-shadow: 0 0 0 0 rgba(224, 57, 43, .6);
    animation: lp-live-b-gcxr5fbmsx 1.8s ease-out infinite;
}
.lp-today-date[b-gcxr5fbmsx] { font-size: 13px; font-weight: 700; color: var(--lp-muted); }

.lp-today-stage[b-gcxr5fbmsx] {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 16 / 10;
    border-radius: 16px;
    overflow: hidden;
    background:
        radial-gradient(60% 70% at 50% 45%, rgba(224, 57, 43, .18), rgba(224, 57, 43, 0) 70%),
        radial-gradient(120% 100% at 50% 0%, #17171d, #0d0d11);
    box-shadow: 0 0 0 1px var(--lp-line) inset;
    perspective: 600px;
}
/* Two tilted rings turning in opposite directions: the "spin it" of the game, without
   showing a structure that could give a day away. */
.lp-orbit[b-gcxr5fbmsx] {
    position: absolute;
    width: 62%;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1.5px dashed rgba(242, 239, 236, .22);
    --tilt: rotateX(72deg);
    transform: var(--tilt);
    animation: lp-orbit-b-gcxr5fbmsx 16s linear infinite;
}
.lp-orbit-2[b-gcxr5fbmsx] {
    width: 44%;
    border: 1.5px solid rgba(224, 57, 43, .35);
    --tilt: rotateX(66deg) rotateY(22deg);
    animation-duration: 11s;
    animation-direction: reverse;
}
.lp-q[b-gcxr5fbmsx] {
    position: relative;
    font: 900 clamp(64px, 20vw, 88px)/1 var(--lp-display);
    color: var(--lp-red-hi);
    text-shadow: 0 0 40px rgba(224, 57, 43, .65), 0 10px 30px rgba(0, 0, 0, .6);
    animation: lp-bob-b-gcxr5fbmsx 4.5s ease-in-out infinite;
}
.lp-today-hint[b-gcxr5fbmsx] {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    padding: 5px 12px;
    border: 1px solid var(--lp-line);
    border-radius: 999px;
    background: rgba(11, 11, 13, .7);
    font: 800 10px var(--lp-body);
    letter-spacing: .12em;
    text-transform: uppercase;
    white-space: nowrap;
    color: var(--lp-muted);
}

.lp-today-ask[b-gcxr5fbmsx] { margin: 14px 4px 10px; font: 900 22px var(--lp-display); letter-spacing: -.02em; }

.lp-opts[b-gcxr5fbmsx] { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lp-opt[b-gcxr5fbmsx] {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 44px;
    padding: 0 12px;
    border: 1px solid var(--lp-line);
    border-radius: 12px;
    background: rgba(255, 255, 255, .015);
}
.lp-opt b[b-gcxr5fbmsx] {
    flex: none;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border-radius: 6px;
    background: rgba(224, 57, 43, .14);
    color: var(--lp-red-hi);
    font-size: 11px;
    font-weight: 800;
}
/* Redacted answers: a hint of the game without a hint of the day. */
.lp-opt i[b-gcxr5fbmsx] {
    color: #5c5a63;
    font-style: normal;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .28em;
}

.lp-today-foot[b-gcxr5fbmsx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 4px 2px;
    font-size: 14px;
    color: var(--lp-muted);
}
.lp-today-foot b[b-gcxr5fbmsx] { color: var(--lp-bone); font-weight: 800; font-variant-numeric: tabular-nums; }
.lp-today-go[b-gcxr5fbmsx] { display: inline-flex; gap: 6px; font-weight: 800; color: var(--lp-red-hi); }

/* ---- proof strip ---- */
.lp-proof[b-gcxr5fbmsx] {
    position: relative;
    padding: 28px 0;
    border-top: 1px solid var(--lp-line);
    border-bottom: 1px solid var(--lp-line);
    background: var(--lp-s1);
}
.lp-proof-lead[b-gcxr5fbmsx] { margin: 0 0 18px; text-align: center; font-size: 15px; color: var(--lp-dim); }
.lp-proof-lead strong[b-gcxr5fbmsx] { color: var(--lp-bone); }
.lp-stats[b-gcxr5fbmsx] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 12px;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}
.lp-stats li[b-gcxr5fbmsx] { display: flex; flex-direction: column; gap: 4px; }
.lp-stats strong[b-gcxr5fbmsx] { font: 900 30px/1 var(--lp-display); letter-spacing: -.02em; color: var(--lp-bone); }
.lp-stats span[b-gcxr5fbmsx] { font-size: 13px; line-height: 1.35; color: var(--lp-muted); }

/* ---- sections ---- */
.lp-section[b-gcxr5fbmsx] { padding-top: 64px; padding-bottom: 64px; }
.lp-section + .lp-section[b-gcxr5fbmsx] { border-top: 1px solid #1c1c22; }

.lp-steps[b-gcxr5fbmsx] {
    list-style: none;
    margin: 32px 0 0;
    padding: 0;
    display: grid;
    gap: 44px;
}
.lp-step[b-gcxr5fbmsx] { display: flex; flex-direction: column; align-items: center; text-align: center; }
.lp-phone-sm[b-gcxr5fbmsx] { width: 220px; margin-bottom: 24px; }
.lp-step-num[b-gcxr5fbmsx] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(224, 57, 43, .14);
    color: var(--lp-red-hi);
    font-weight: 800;
    font-size: 14px;
}
.lp-step h3[b-gcxr5fbmsx] { margin: 12px 0 8px; font: 900 24px var(--lp-display); letter-spacing: -.02em; }
.lp-step p[b-gcxr5fbmsx] { margin: 0; max-width: 20em; color: var(--lp-dim); line-height: 1.55; }
.lp-swipe-hint[b-gcxr5fbmsx] { display: none; margin: 14px 0 0; text-align: center; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--lp-muted); }

/* ---- bento ----
   On a phone the small tiles are compact rows (icon beside the text); six stacked
   cards were most of a screen each. From 600px they become a grid of cards. */
.lp-bento[b-gcxr5fbmsx] { display: grid; gap: 10px; margin-top: 28px; }
.lp-tile[b-gcxr5fbmsx] {
    position: relative;
    display: grid;
    grid-template-columns: 44px 1fr;
    column-gap: 14px;
    align-items: start;
    padding: 16px;
    border: 1px solid var(--lp-line);
    border-radius: var(--r-lg, 20px);
    background: var(--lp-s1);
    overflow: hidden;
}
.lp-tile h3[b-gcxr5fbmsx] { grid-column: 2; margin: 2px 0 4px; font: 900 19px/1.15 var(--lp-display); letter-spacing: -.02em; }
.lp-tile p[b-gcxr5fbmsx] { grid-column: 2; margin: 0; font-size: 15px; line-height: 1.5; color: var(--lp-dim); }
.lp-tile-icon[b-gcxr5fbmsx] { grid-row: span 2; }
.lp-tile-icon[b-gcxr5fbmsx] {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: rgba(224, 57, 43, .12);
}
.lp-tile-icon svg[b-gcxr5fbmsx] { width: 24px; height: 24px; fill: none; stroke: var(--lp-red-hi); stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }

.lp-tile-streak[b-gcxr5fbmsx] {
    display: block;
    padding: 20px;
    background:
        radial-gradient(90% 70% at 100% 0%, rgba(224, 57, 43, .22), rgba(224, 57, 43, 0) 70%),
        var(--lp-s1);
}
.lp-flame[b-gcxr5fbmsx] { display: flex; align-items: center; gap: 10px; }
.lp-tile-streak h3[b-gcxr5fbmsx] { margin: 14px 0 6px; font-size: 22px; }
.lp-flame svg[b-gcxr5fbmsx] { width: 46px; height: 46px; fill: var(--lp-red); filter: drop-shadow(0 6px 18px rgba(224, 57, 43, .55)); animation: lp-flicker-b-gcxr5fbmsx 2.4s ease-in-out infinite; transform-origin: 50% 90%; }
.lp-count[b-gcxr5fbmsx] { font: 900 var(--lp-count-size, 56px)/1 var(--lp-display); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.lp-week[b-gcxr5fbmsx] { display: flex; gap: 6px; margin-top: 18px; }
.lp-week span[b-gcxr5fbmsx] {
    flex: none;
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    border: 1px solid var(--lp-line);
    font-size: 11px;
    font-weight: 800;
    color: var(--lp-muted);
}
/* White day letters on the button red (5.1:1), as on the buttons beside it. */
.lp-week .is-done[b-gcxr5fbmsx] { background: var(--lp-red-fill); border-color: var(--lp-red-fill); color: #fff; }
.lp-week .is-today[b-gcxr5fbmsx] { border: 2px solid var(--lp-red-hi); color: var(--lp-bone); }

/* ---- study / premium ---- */
.lp-premium[b-gcxr5fbmsx] {
    display: grid;
    gap: 36px;
    padding: 32px 20px;
    border: 1px solid var(--lp-line);
    border-radius: 28px;
    background:
        radial-gradient(120% 90% at 0% 0%, rgba(224, 57, 43, .12), rgba(224, 57, 43, 0) 60%),
        var(--lp-s1);
}
/* On a phone the pitch comes first and the screenshot follows it; a full phone
   height of picture before the heading read as a dead stretch of page. */
.lp-premium-art[b-gcxr5fbmsx] { display: flex; justify-content: center; order: 2; }
.lp-phone-md[b-gcxr5fbmsx] { width: 200px; }
.lp-list[b-gcxr5fbmsx] { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 12px; }
.lp-list li[b-gcxr5fbmsx] { position: relative; padding-left: 30px; color: var(--lp-dim); line-height: 1.45; }
.lp-list li[b-gcxr5fbmsx]::before {
    content: "";
    position: absolute;
    left: 0;
    top: .15em;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--lp-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round' d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center / 12px no-repeat;
}
.lp-price[b-gcxr5fbmsx] { margin: 26px 0 0; font-size: 18px; color: var(--lp-dim); }
.lp-price strong[b-gcxr5fbmsx] { font: 900 36px var(--lp-display); color: var(--lp-bone); letter-spacing: -.02em; }
.lp-premium-actions[b-gcxr5fbmsx] { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.lp-premium-actions .lp-btn[b-gcxr5fbmsx] { flex: 1 1 100%; }
.lp-fine[b-gcxr5fbmsx] { margin: 18px 0 0; font-size: 14px; line-height: 1.5; color: var(--lp-muted); }
.lp-fine-row[b-gcxr5fbmsx] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    font-size: 13px;
    font-weight: 700;
    color: var(--lp-muted);
}
.lp-fine-row li[b-gcxr5fbmsx] { display: inline-flex; align-items: center; gap: 6px; }
/* Ticks, not separator dots: dots strand at the start of a wrapped line. */
.lp-fine-row li[b-gcxr5fbmsx]::before {
    content: "";
    width: 12px;
    height: 12px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23ff6a5a' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round' d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.lp-premium-copy[b-gcxr5fbmsx]  .sb-row { margin-top: 12px; }

/* ---- FAQ ---- */
.lp-faq[b-gcxr5fbmsx] { margin-top: 20px; border-top: 1px solid var(--lp-line); }
.lp-faq details[b-gcxr5fbmsx] { border-bottom: 1px solid var(--lp-line); }
.lp-faq summary[b-gcxr5fbmsx] {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 60px;
    padding-right: 40px;
    font: 800 17px var(--lp-body);
    cursor: pointer;
    list-style: none;
}
.lp-faq summary[b-gcxr5fbmsx]::-webkit-details-marker { display: none; }
.lp-faq summary[b-gcxr5fbmsx]::after {
    content: "";
    position: absolute;
    right: 6px;
    top: 50%;
    width: 12px;
    height: 12px;
    margin-top: -9px;
    border-right: 2.5px solid var(--lp-red-hi);
    border-bottom: 2.5px solid var(--lp-red-hi);
    transform: rotate(45deg);
    transition: transform var(--dur-2, 200ms) var(--lp-ease);
}
.lp-faq details[open] summary[b-gcxr5fbmsx]::after { transform: translateY(5px) rotate(-135deg); }
.lp-faq details p[b-gcxr5fbmsx] { margin: -4px 0 20px; max-width: 46em; font-size: 16px; line-height: 1.6; color: var(--lp-dim); }
.lp-faq details a[b-gcxr5fbmsx] { color: var(--lp-bone); text-decoration-color: var(--lp-red); text-underline-offset: 3px; }

/* ---- closing call to action ---- */
.lp-final[b-gcxr5fbmsx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 72px;
    padding-bottom: 80px;
    text-align: center;
    background: radial-gradient(60% 60% at 50% 60%, rgba(224, 57, 43, .16), rgba(224, 57, 43, 0) 70%);
}
.lp-final-title[b-gcxr5fbmsx] { margin: 0; font: 900 clamp(34px, 9vw, 60px)/1 var(--lp-display); letter-spacing: -.03em; text-wrap: balance; }
.lp-final-sub[b-gcxr5fbmsx] { margin: 14px 0 28px; font-size: 17px; color: var(--lp-dim); }
.lp-final .lp-btn-hero[b-gcxr5fbmsx] { width: 100%; max-width: 420px; }
.lp-final[b-gcxr5fbmsx]  .sb-row { justify-content: center; margin-top: 20px; }

/* ---- footer ---- */
.lp-footer[b-gcxr5fbmsx] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 28px;
    padding-top: 28px;
    padding-bottom: 40px;
    border-top: 1px solid #1c1c22;
}
.lp-footer-links[b-gcxr5fbmsx] { display: flex; flex-wrap: wrap; gap: 0 18px; }
.lp-footer-links a[b-gcxr5fbmsx] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--lp-dim);
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
}
.lp-footer-links a:hover[b-gcxr5fbmsx] { color: var(--lp-bone); }
.lp-copy[b-gcxr5fbmsx] { margin: 0; width: 100%; font-size: 13px; color: var(--lp-muted); }

/* ---- sticky call to action (phones) ---- */
.lp-sticky[b-gcxr5fbmsx] {
    position: fixed;
    z-index: 40;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 14px 16px max(14px, env(safe-area-inset-bottom, 0px));
    background: linear-gradient(180deg, rgba(11, 11, 13, 0), rgba(11, 11, 13, .92) 35%);
    transform: translateY(115%);
    transition: transform var(--dur-3, 320ms) var(--lp-ease);
    pointer-events: none;
}
.lp-sticky.is-on[b-gcxr5fbmsx] { transform: none; pointer-events: auto; }
.lp-sticky .lp-btn[b-gcxr5fbmsx] { width: 100%; min-height: 56px; }

/* ---- motion ---- */
.lp-in[b-gcxr5fbmsx] { animation: lp-rise-b-gcxr5fbmsx .7s var(--lp-ease) both; animation-delay: calc(var(--i, 0) * 90ms + 80ms); }

@keyframes lp-rise-b-gcxr5fbmsx { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
/* Spins the ring about its own axis, then tilts it: a turntable seen from the side. */
@keyframes lp-orbit-b-gcxr5fbmsx { from { transform: var(--tilt) rotateZ(0deg); } to { transform: var(--tilt) rotateZ(360deg); } }
@keyframes lp-bob-b-gcxr5fbmsx { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@keyframes lp-live-b-gcxr5fbmsx { 0% { box-shadow: 0 0 0 0 rgba(224, 57, 43, .6); } 80%, 100% { box-shadow: 0 0 0 8px rgba(224, 57, 43, 0); } }
@keyframes lp-glow-b-gcxr5fbmsx { 0%, 100% { box-shadow: 0 10px 30px -10px rgba(224, 57, 43, .7); } 50% { box-shadow: 0 12px 44px -6px rgba(224, 57, 43, .95); } }
@keyframes lp-flicker-b-gcxr5fbmsx { 0%, 100% { transform: scale(1) rotate(0); } 40% { transform: scale(1.04, .97) rotate(-2deg); } 70% { transform: scale(.98, 1.03) rotate(1.5deg); } }

/* Registered so the count-up below can interpolate an integer. */
@property --lp-n { syntax: "<integer>"; inherits: false; initial-value: 0; }

/* Sections rise in as they scroll into view, where the browser can tie an animation
   to scroll position (Chrome, Edge, Safari 26). Elsewhere they are simply there. */
@supports (animation-timeline: view()) {
    .lp-reveal[b-gcxr5fbmsx] {
        animation: lp-rise-b-gcxr5fbmsx linear both;
        animation-timeline: view();
        animation-range: entry 0% entry 40%;
    }

    /* The streak tile counts up to its number as it arrives. */
    .lp-count[b-gcxr5fbmsx] {
        font-size: 0;
        counter-reset: lp-n var(--lp-n);
        animation: lp-count-b-gcxr5fbmsx linear both;
        animation-timeline: view();
        animation-range: entry 10% cover 40%;
    }
    .lp-count[b-gcxr5fbmsx]::after { content: counter(lp-n); font-size: var(--lp-count-size, 56px); }
    @keyframes lp-count-b-gcxr5fbmsx { from { --lp-n: 0; } to { --lp-n: var(--to); } }
}

@media (prefers-reduced-motion: reduce) {
    .lp *[b-gcxr5fbmsx],
    .lp *[b-gcxr5fbmsx]::before,
    .lp *[b-gcxr5fbmsx]::after {
        animation: none !important;
        transition: none !important;
    }
    .lp-count[b-gcxr5fbmsx] { font-size: var(--lp-count-size, 56px); }
    .lp-count[b-gcxr5fbmsx]::after { content: none; }
    .lp-btn:active[b-gcxr5fbmsx], .lp-nav-cta:active[b-gcxr5fbmsx] { transform: none; }
    .lp-today:active[b-gcxr5fbmsx], .lp-today:hover[b-gcxr5fbmsx] { translate: none; scale: none; }
}

/* ---- 600px+: room for things side by side ---- */
@media (min-width: 600px) {
    .lp-wrap[b-gcxr5fbmsx] { padding-left: 24px; padding-right: 24px; }
    .lp-hide-sm[b-gcxr5fbmsx] { display: inline-flex; }
    .lp-hero-actions[b-gcxr5fbmsx] { align-items: flex-start; }
    .lp-hero-actions .lp-btn-hero[b-gcxr5fbmsx] { width: auto; padding: 0 30px; }
    .lp-trust[b-gcxr5fbmsx] { justify-content: flex-start; }
    .lp-hero-actions[b-gcxr5fbmsx]  .sb-soon,
    .lp-hero-actions[b-gcxr5fbmsx]  .sb-row { justify-content: flex-start; }
    .lp-stats[b-gcxr5fbmsx] { grid-template-columns: repeat(4, 1fr); }
    .lp-bento[b-gcxr5fbmsx] { grid-template-columns: 1fr 1fr; gap: 12px; }
    .lp-tile[b-gcxr5fbmsx] { display: block; padding: 22px 20px; }
    .lp-tile h3[b-gcxr5fbmsx] { margin: 14px 0 6px; font-size: 21px; }
    .lp-tile-streak[b-gcxr5fbmsx] { grid-column: span 2; }
    /* The last tile runs full width as a strip, so neither grid leaves an orphan. */
    .lp-tile-wide[b-gcxr5fbmsx] { grid-column: 1 / -1; display: grid; grid-template-columns: 44px 1fr; column-gap: 16px; }
    .lp-tile-wide h3[b-gcxr5fbmsx] { margin-top: 2px; }
    .lp-premium-actions .lp-btn[b-gcxr5fbmsx] { flex: 0 0 auto; }
    .lp-premium[b-gcxr5fbmsx] { padding: 44px 36px; }
}

/* ---- phones and small tablets: "how it works" is a swipeable row ----
   Stacked, the three steps were three full phone heights. A snap row keeps all three
   a thumb away. */
@media (max-width: 899px) {
    .lp-steps[b-gcxr5fbmsx] {
        grid-auto-flow: column;
        grid-auto-columns: min(78%, 280px);
        gap: 16px;
        margin-left: -16px;
        margin-right: -16px;
        padding: 0 16px 8px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-padding: 0 16px;
        scrollbar-width: none;
    }
    .lp-steps[b-gcxr5fbmsx]::-webkit-scrollbar { display: none; }
    .lp-step[b-gcxr5fbmsx] { scroll-snap-align: start; }
    .lp-phone-sm[b-gcxr5fbmsx] { width: 190px; }
    .lp-swipe-hint[b-gcxr5fbmsx] { display: block; }
}

@media (min-width: 600px) and (max-width: 899px) {
    .lp-steps[b-gcxr5fbmsx] { margin-left: -24px; margin-right: -24px; padding: 0 24px 8px; scroll-padding: 0 24px; }
}

/* ---- 900px+: two-column hero, desktop extras ---- */
@media (min-width: 900px) {
    .lp-nav[b-gcxr5fbmsx] { padding-top: 20px; padding-bottom: 20px; }
    .lp-nav-links[b-gcxr5fbmsx] { gap: 10px; }
    .lp-hero[b-gcxr5fbmsx] { grid-template-columns: 1.05fr .95fr; align-items: center; gap: 48px; padding-top: 40px; padding-bottom: 96px; }
    .lp-hero-copy[b-gcxr5fbmsx] { padding-bottom: 20px; }

    .lp-qr[b-gcxr5fbmsx] {
        display: flex;
        align-items: center;
        gap: 16px;
        max-width: 360px;
        margin-top: 34px;
        padding: 12px 16px 12px 12px;
        border: 1px solid var(--lp-line);
        border-radius: 18px;
        background: var(--lp-s1);
    }
    .lp-qr img[b-gcxr5fbmsx] { flex: none; width: 88px; height: 88px; border-radius: 10px; background: #fff; padding: 4px; box-sizing: border-box; }
    .lp-qr p[b-gcxr5fbmsx] { margin: 0; font-size: 14px; line-height: 1.45; color: var(--lp-dim); }
    .lp-qr strong[b-gcxr5fbmsx] { display: block; color: var(--lp-bone); }

    .lp-hero-art[b-gcxr5fbmsx] { height: 640px; justify-content: flex-end; }
    .lp-phone-hero[b-gcxr5fbmsx] {
        display: block;
        position: absolute;
        top: 0;
        right: 4%;
        width: 290px;
        rotate: 4deg;
        animation: lp-rise-b-gcxr5fbmsx .9s var(--lp-ease) .2s both;
    }
    .lp-today[b-gcxr5fbmsx] {
        position: absolute;
        left: 0;
        bottom: 18px;
        width: 330px;
        animation: lp-rise-b-gcxr5fbmsx .9s var(--lp-ease) .45s both;
    }

    .lp-proof[b-gcxr5fbmsx] { padding: 32px 0; }
    .lp-stats strong[b-gcxr5fbmsx] { font-size: 38px; }
    .lp-section[b-gcxr5fbmsx] { padding-top: 96px; padding-bottom: 96px; }
    .lp-steps[b-gcxr5fbmsx] { grid-template-columns: repeat(3, 1fr); gap: 32px; }
    .lp-bento[b-gcxr5fbmsx] { grid-template-columns: repeat(3, 1fr); }
    .lp-tile-streak[b-gcxr5fbmsx] { grid-column: span 1; grid-row: span 2; display: flex; flex-direction: column; justify-content: flex-end; }
    .lp-tile-streak .lp-flame svg[b-gcxr5fbmsx] { width: 64px; height: 64px; }
    .lp-tile-streak[b-gcxr5fbmsx] { --lp-count-size: 76px; }
    .lp-premium[b-gcxr5fbmsx] { grid-template-columns: .8fr 1.2fr; align-items: center; padding: 56px; gap: 56px; }
    .lp-premium-art[b-gcxr5fbmsx] { order: 0; }
    .lp-phone-md[b-gcxr5fbmsx] { width: 250px; }
    .lp-faq-wrap[b-gcxr5fbmsx] { max-width: 820px; }
    .lp-final[b-gcxr5fbmsx] { padding-top: 96px; padding-bottom: 112px; }
    .lp-copy[b-gcxr5fbmsx] { width: auto; margin-left: auto; }
    .lp-sticky[b-gcxr5fbmsx] { display: none; }
}

@media (min-width: 900px) and (max-width: 1040px) {
    .lp-today[b-gcxr5fbmsx] { width: 300px; }
    .lp-phone-hero[b-gcxr5fbmsx] { width: 260px; }
}

/* "pinch" on touch screens, "scroll" with a mouse or trackpad. */
.lp-zoom-fine[b-gcxr5fbmsx] { display: none; }

@media (hover: hover) and (pointer: fine) {
    .lp-zoom-touch[b-gcxr5fbmsx] { display: none; }
    .lp-zoom-fine[b-gcxr5fbmsx] { display: inline; }
}
/* /Components/Routes.razor.rz.scp.css */
/* The two in-between states the router can show on the web, in the game's palette
   rather than the indigo dashboard theme they were left in. */
.rt-state[b-z2gqgwjuwv] {
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 24px 16px;
    text-align: center;
    color: var(--ioha-bone, #f2efec);
    font-family: var(--font-body, Manrope), system-ui, sans-serif;
}
.rt-title[b-z2gqgwjuwv] { margin: 0; font: 900 22px/1.2 var(--font-display, Archivo), Manrope, sans-serif; letter-spacing: -.02em; }
.rt-link[b-z2gqgwjuwv] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--ioha-red-bright, #ff6a5a);
    font-weight: 800;
    text-decoration: none;
}
.rt-spinner[b-z2gqgwjuwv] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 3px solid rgba(224, 57, 43, .2);
    border-top-color: var(--ioha-red, #e0392b);
    animation: rt-spin-b-z2gqgwjuwv .8s linear infinite;
}
.rt-sr[b-z2gqgwjuwv] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}
@keyframes rt-spin-b-z2gqgwjuwv { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .rt-spinner[b-z2gqgwjuwv] { animation-duration: 2.4s; }
}
