/* /Components/Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-ez0fkl861g] {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 248px minmax(0, 1fr);
    background: #eef2f3;
}

.app-shell-auth[b-ez0fkl861g] {
    grid-template-columns: minmax(0, 1fr);
}

.app-shell-fullscreen[b-ez0fkl861g] {
    height: 100dvh;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
    background: #101513;
}

.app-sidebar[b-ez0fkl861g] {
    position: sticky;
    top: 0;
    height: 100vh;
    background: #202422;
    border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.app-main[b-ez0fkl861g] {
    min-width: 0;
}

.app-content[b-ez0fkl861g] {
    min-width: 0;
    padding: 1rem;
}

.app-shell-auth .app-content[b-ez0fkl861g] {
    min-height: 100vh;
    padding: 0;
}

.app-shell-fullscreen .app-main[b-ez0fkl861g],
.app-shell-fullscreen .app-content[b-ez0fkl861g] {
    width: 100%;
    height: 100%;
    min-height: 0;
}

.app-shell-fullscreen .app-content[b-ez0fkl861g] {
    padding: 0;
}

#blazor-error-ui[b-ez0fkl861g] {
    color-scheme: light only;
    background: #fff6d6;
    bottom: 0;
    box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.18);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.75rem 3rem 0.8rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-ez0fkl861g] {
    cursor: pointer;
    position: absolute;
    right: 0.9rem;
    top: 0.65rem;
}

@media (max-width: 760px) {
    .app-shell[b-ez0fkl861g] {
        grid-template-columns: 1fr;
    }

    .app-sidebar[b-ez0fkl861g] {
        position: relative;
        height: auto;
    }

    .app-main[b-ez0fkl861g] {
        min-width: 0;
    }

    .app-content[b-ez0fkl861g] {
        padding: 0.75rem;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.sidebar-brand[b-atz7y73oc3] {
    padding: 1rem;
}

.sidebar-brand a[b-atz7y73oc3] {
    display: block;
    color: #f6fbf8;
    text-decoration: none;
}

.sidebar-brand strong[b-atz7y73oc3] {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar-brand strong[b-atz7y73oc3] {
    font-size: 1.32rem;
    line-height: 1.1;
}

.navbar-toggler[b-atz7y73oc3] {
    appearance: none;
    cursor: pointer;
    width: 2.6rem;
    height: 2.25rem;
    color: white;
    position: absolute;
    top: 1rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 8px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.72%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M5 8h20M5 15h20M5 22h20'/%3e%3c/svg%3e") no-repeat center/1.45rem rgba(255, 255, 255, 0.08);
}

.navbar-toggler:checked[b-atz7y73oc3] {
    background-color: rgba(255, 255, 255, 0.18);
}

.nav-scrollable[b-atz7y73oc3] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-atz7y73oc3] {
    display: block;
}

.nav-stack[b-atz7y73oc3] {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem 1rem;
    box-sizing: border-box;
}

.nav-section[b-atz7y73oc3] {
    margin: 1rem 0 0.35rem;
    padding: 0 0.5rem;
    color: #7e8b85;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.nav-stack[b-atz7y73oc3]  .nav-link,
.nav-button[b-atz7y73oc3] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-height: 2.55rem;
    width: 100%;
    padding: 0.55rem 0.65rem;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #cbd7d1;
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.15;
    text-align: left;
    text-decoration: none;
}

.nav-empty[b-atz7y73oc3] {
    display: block;
    padding: 0.35rem 0.5rem 0.45rem;
    color: #8f9c96;
    font-size: 0.82rem;
    font-weight: 700;
}

.nav-stack[b-atz7y73oc3]  .nav-link span:last-child,
.nav-button span:last-child[b-atz7y73oc3] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-stack[b-atz7y73oc3]  .map-status-dot {
    width: 0.55rem;
    height: 0.55rem;
    flex: 0 0 auto;
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 50%;
    background: #7e8b85;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.12);
}

.nav-stack[b-atz7y73oc3]  .map-status-dot.is-available {
    border-color: rgba(132, 225, 188, 0.55);
    background: #2fbf71;
}

.nav-stack[b-atz7y73oc3]  .map-status-dot.is-unavailable {
    border-color: rgba(255, 164, 151, 0.62);
    background: #e5483f;
}

.nav-stack[b-atz7y73oc3]  .nav-link.active .map-status-dot {
    box-shadow: 0 0 0 2px rgba(16, 61, 45, 0.12);
}

.nav-stack[b-atz7y73oc3]  .nav-link:hover,
.nav-button:hover[b-atz7y73oc3] {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
}

.nav-stack[b-atz7y73oc3]  .nav-link.active {
    background: #e7f7ef;
    color: #103d2d;
}

.nav-button[b-atz7y73oc3] {
    cursor: pointer;
}

.nav-version[b-atz7y73oc3] {
    margin-top: auto;
    padding: 1rem 0.5rem 0.1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    color: #6f7d76;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1;
    text-align: center;
}

.nav-version a[b-atz7y73oc3] {
    color: #9fb3aa;
    text-decoration: none;
}

.nav-version a[b-atz7y73oc3]::before {
    content: "·";
    margin-right: 0.45rem;
    color: #52615a;
}

.nav-version a:hover[b-atz7y73oc3] {
    color: #f6fbf8;
}

.bi[b-atz7y73oc3] {
    display: inline-block;
    flex: 0 0 auto;
    width: 1.05rem;
    height: 1.05rem;
    background-color: currentColor;
    -webkit-mask: var(--nav-icon) center / contain no-repeat;
    mask: var(--nav-icon) center / contain no-repeat;
}

.bi-house-door-fill-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-recap-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='M8 1.5 9.1 5l3.4-1.1-2.1 2.9 2.9 2.1-3.6.1.1 3.6L8 10.1l-1.8 2.5.1-3.6-3.6-.1 2.9-2.1-2.1-2.9L6.9 5 8 1.5Z'/%3E%3Cpath d='M12.3 11.6l.55 1.55 1.55.55-1.55.55-.55 1.55-.55-1.55-1.55-.55 1.55-.55.55-1.55Z'/%3E%3C/svg%3E");
}

.bi-person-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person' viewBox='0 0 16 16'%3E%3Cpath d='M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z'/%3E%3C/svg%3E");
}

.bi-globe-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='6.25'/%3E%3Cpath d='M2.4 8h11.2M8 1.75c1.75 1.7 2.55 3.78 2.55 6.25S9.75 12.55 8 14.25M8 1.75C6.25 3.45 5.45 5.53 5.45 8s.8 4.55 2.55 6.25M3.55 4.1c1.28.72 2.76 1.08 4.45 1.08s3.17-.36 4.45-1.08M3.55 11.9c1.28-.72 2.76-1.08 4.45-1.08s3.17.36 4.45 1.08'/%3E%3C/svg%3E");
}

.bi-key-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Ccircle cx='5.25' cy='10.75' r='2.75'/%3E%3Cpath d='M7.2 8.8 14 2M10.6 5.4l1.45 1.45M9.1 6.9l1.45 1.45'/%3E%3C/svg%3E");
}

.bi-person-badge-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-badge' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z'/%3E%3Cpath d='M4.5 0A2.5 2.5 0 0 0 2 2.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2.5A2.5 2.5 0 0 0 11.5 0h-7zM3 2.5A1.5 1.5 0 0 1 4.5 1h7A1.5 1.5 0 0 1 13 2.5v10.795a4.2 4.2 0 0 0-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 0 0-.776.492V2.5z'/%3E%3C/svg%3E");
}

.bi-person-fill-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-fill' viewBox='0 0 16 16'%3E%3Cpath d='M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3Zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
}

.bi-arrow-bar-left-nav-menu[b-atz7y73oc3] {
    --nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-arrow-bar-left' viewBox='0 0 16 16'%3E%3Cpath d='M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5ZM10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5Z'/%3E%3C/svg%3E");
}

@media (min-width: 761px) {
    .navbar-toggler[b-atz7y73oc3] {
        display: none;
    }

    .nav-scrollable[b-atz7y73oc3] {
        display: block;
        height: calc(100vh - 4.75rem);
        overflow-y: auto;
    }
}

@media (max-width: 760px) {
    .sidebar-brand[b-atz7y73oc3] {
        padding-right: 4.4rem;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-b329k4pkq6],
.components-reconnect-repeated-attempt-visible[b-b329k4pkq6],
.components-reconnect-failed-visible[b-b329k4pkq6],
.components-pause-visible[b-b329k4pkq6],
.components-resume-failed-visible[b-b329k4pkq6],
.components-rejoining-animation[b-b329k4pkq6] {
    display: none;
}

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


#components-reconnect-modal[b-b329k4pkq6] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    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-b329k4pkq6 0.5s both;
    &[open]

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

}

#components-reconnect-modal[b-b329k4pkq6]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-b329k4pkq6 0.5s ease-in-out;
    opacity: 1;
}

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

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

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

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

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

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

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

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

@keyframes components-rejoining-animation-b-b329k4pkq6 {
    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/Recap.razor.rz.scp.css */
.recap-page[b-oi85ka8z17] {
    position: relative;
    width: 100%;
    height: 100dvh;
    min-height: 540px;
    overflow: hidden;
    isolation: isolate;
    background: #101513;
    color: #f7fbf9;
}

.recap-map-frame[b-oi85ka8z17] {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: #131816;
}

.recap-map-offline[b-oi85ka8z17] {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 0.3rem;
    background:
        radial-gradient(circle at 50% 44%, rgba(103, 242, 177, 0.1), transparent 24rem),
        repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.018) 0 1px, transparent 1px 18px),
        #111714;
    color: rgba(238, 246, 242, 0.46);
}

.recap-map-offline span[b-oi85ka8z17] {
    font-size: 0.65rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.recap-map-offline strong[b-oi85ka8z17] {
    color: rgba(255, 255, 255, 0.76);
    font-size: clamp(1.4rem, 4vw, 2.3rem);
    font-weight: 900;
}

.recap-map-wash[b-oi85ka8z17] {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(7, 11, 9, 0.64) 0%, rgba(7, 11, 9, 0.08) 21%, rgba(7, 11, 9, 0) 48%),
        linear-gradient(0deg, rgba(7, 11, 9, 0.92) 0%, rgba(7, 11, 9, 0.42) 31%, rgba(7, 11, 9, 0) 62%),
        radial-gradient(circle at 50% 110%, rgba(55, 226, 146, 0.17), transparent 42%);
}

.recap-toolbar[b-oi85ka8z17] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 1rem;
    padding: 1.1rem 1.25rem;
    pointer-events: none;
}

.recap-toolbar > *[b-oi85ka8z17] {
    pointer-events: auto;
}

.recap-toolbar-button[b-oi85ka8z17],
.recap-map-name[b-oi85ka8z17],
.recap-map-picker[b-oi85ka8z17] {
    min-height: 2.6rem;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    background: rgba(14, 20, 17, 0.72);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px) saturate(1.2);
}

.recap-toolbar-button[b-oi85ka8z17] {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.55rem 0.9rem 0.55rem 0.65rem;
    color: #f7fbf9;
    font-size: 0.78rem;
    font-weight: 850;
    letter-spacing: 0.02em;
    text-decoration: none;
    transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.recap-toolbar-button:hover[b-oi85ka8z17],
.recap-toolbar-button:focus-visible[b-oi85ka8z17] {
    border-color: rgba(103, 242, 177, 0.7);
    background: rgba(21, 32, 27, 0.9);
    color: #ffffff;
    transform: translateY(-1px);
}

.recap-toolbar-button[b-oi85ka8z17]  .action-icon {
    width: 1.15rem;
    height: 1.15rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.recap-brand[b-oi85ka8z17] {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.45rem;
    color: #ffffff;
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.5);
}

.recap-brand strong[b-oi85ka8z17] {
    font-size: 1.05rem;
    font-weight: 900;
    letter-spacing: -0.025em;
}

.recap-brand span[b-oi85ka8z17] {
    color: #86f4bd;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.recap-map-name[b-oi85ka8z17] {
    justify-self: end;
    display: inline-flex;
    max-width: min(28vw, 260px);
    align-items: center;
    padding: 0.55rem 0.95rem;
    overflow: hidden;
    color: rgba(247, 251, 249, 0.86);
    font-size: 0.76rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.recap-map-picker[b-oi85ka8z17] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.3rem 0.45rem 0.3rem 0.8rem;
}

.recap-map-picker > span[b-oi85ka8z17] {
    color: rgba(247, 251, 249, 0.58);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.recap-map-picker select[b-oi85ka8z17] {
    max-width: min(24vw, 220px);
    min-height: 1.95rem;
    padding: 0 1.75rem 0 0.6rem;
    border: 0;
    border-radius: 999px;
    outline: none;
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 800;
}

.recap-map-picker select option[b-oi85ka8z17] {
    background: #1a211e;
    color: #ffffff;
}

.recap-story[b-oi85ka8z17] {
    position: absolute;
    left: 50%;
    bottom: max(1.25rem, env(safe-area-inset-bottom));
    z-index: 3;
    width: min(calc(100% - 2rem), 640px);
    transform: translateX(-50%);
}

.recap-progress[b-oi85ka8z17] {
    display: flex;
    gap: 0.28rem;
    margin: 0 0 0.58rem;
    padding: 0 0.25rem;
}

.recap-progress button[b-oi85ka8z17] {
    position: relative;
    flex: 1 1 0;
    height: 0.72rem;
    padding: 0;
    border: 0;
    border-radius: 999px;
    outline-offset: 3px;
    background: transparent;
    cursor: pointer;
}

.recap-progress button span[b-oi85ka8z17] {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 0.18rem;
    border-radius: inherit;
    background: rgba(255, 255, 255, 0.22);
    transform: translateY(-50%);
    transition: height 150ms ease, background 150ms ease;
}

.recap-progress button:hover span[b-oi85ka8z17],
.recap-progress button:focus-visible span[b-oi85ka8z17] {
    height: 0.3rem;
    background: rgba(255, 255, 255, 0.5);
}

.recap-progress button.is-complete span[b-oi85ka8z17] {
    background: rgba(255, 255, 255, 0.68);
}

.recap-progress button.is-active span[b-oi85ka8z17] {
    height: 0.3rem;
    background: var(--recap-progress-color, #67f2b1);
    box-shadow: 0 0 14px rgba(103, 242, 177, 0.42);
}

.recap-card[b-oi85ka8z17] {
    position: relative;
    min-height: 238px;
    display: flex;
    flex-direction: column;
    padding: 1.25rem 1.35rem 1.15rem;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-top-color: color-mix(in srgb, var(--recap-accent) 72%, white 12%);
    border-radius: 20px;
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--recap-accent) 11%, transparent), transparent 43%),
        rgba(13, 18, 16, 0.88);
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.38), 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
    backdrop-filter: blur(24px) saturate(1.25);
    animation: recap-card-enter-b-oi85ka8z17 260ms cubic-bezier(0.2, 0.75, 0.25, 1);
}

.recap-card[b-oi85ka8z17]::after {
    position: absolute;
    top: -5rem;
    right: -4rem;
    width: 13rem;
    height: 13rem;
    border-radius: 50%;
    background: var(--recap-accent);
    content: "";
    filter: blur(72px);
    opacity: 0.13;
    pointer-events: none;
}

.recap-card-topline[b-oi85ka8z17] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.5rem;
}

.recap-card-kicker[b-oi85ka8z17],
.recap-card-counter[b-oi85ka8z17] {
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.recap-card-kicker[b-oi85ka8z17] {
    color: var(--recap-accent);
}

.recap-card-counter[b-oi85ka8z17] {
    color: rgba(247, 251, 249, 0.42);
}

.recap-card-primary[b-oi85ka8z17] {
    position: relative;
    z-index: 1;
    display: block;
    max-width: 100%;
    margin: 0.05rem 0 0.08rem;
    overflow: hidden;
    color: #ffffff;
    font-size: clamp(2.35rem, 7vw, 4.15rem);
    font-weight: 950;
    letter-spacing: -0.065em;
    line-height: 0.98;
    text-overflow: ellipsis;
    text-shadow: 0 4px 30px rgba(0, 0, 0, 0.26);
    white-space: nowrap;
}

.recap-card h1[b-oi85ka8z17] {
    position: relative;
    z-index: 1;
    margin: 0.18rem 0 0;
    color: #ffffff;
    font-size: clamp(1.1rem, 3vw, 1.45rem);
    font-weight: 900;
    letter-spacing: -0.025em;
    line-height: 1.15;
}

.recap-card > p[b-oi85ka8z17] {
    position: relative;
    z-index: 1;
    max-width: 560px;
    margin: 0.48rem 0 0;
    color: rgba(238, 246, 242, 0.72);
    font-size: 0.85rem;
    font-weight: 560;
    line-height: 1.48;
}

.recap-card-footer[b-oi85ka8z17] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-top: auto;
    padding-top: 0.8rem;
}

.recap-card-footer strong[b-oi85ka8z17] {
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.72rem;
    font-weight: 850;
}

.recap-card-footer span[b-oi85ka8z17] {
    color: rgba(238, 246, 242, 0.48);
    font-size: 0.67rem;
    font-weight: 700;
    text-align: right;
}

.recap-controls[b-oi85ka8z17] {
    display: grid;
    grid-template-columns: 2.65rem minmax(0, 1fr) 2.65rem;
    align-items: center;
    gap: 0.65rem;
    width: min(100%, 360px);
    margin: 0.65rem auto 0;
}

.recap-controls button[b-oi85ka8z17] {
    width: 2.65rem;
    height: 2.65rem;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 50%;
    background: rgba(14, 20, 17, 0.78);
    color: #ffffff;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(16px);
    cursor: pointer;
    transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.recap-controls button:hover:not(:disabled)[b-oi85ka8z17],
.recap-controls button:focus-visible:not(:disabled)[b-oi85ka8z17] {
    border-color: rgba(103, 242, 177, 0.65);
    background: rgba(24, 39, 32, 0.92);
    transform: translateY(-1px);
}

.recap-controls button:disabled[b-oi85ka8z17] {
    opacity: 0.28;
    cursor: default;
}

.recap-controls button[b-oi85ka8z17]  .action-icon {
    width: 1.2rem;
    height: 1.2rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.recap-controls > span[b-oi85ka8z17] {
    overflow: hidden;
    color: rgba(247, 251, 249, 0.58);
    font-size: 0.67rem;
    font-weight: 850;
    letter-spacing: 0.035em;
    text-align: center;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.recap-state[b-oi85ka8z17] {
    position: absolute;
    inset: 0;
    display: grid;
    place-content: center;
    justify-items: center;
    padding: 2rem;
    background:
        radial-gradient(circle at 50% 42%, rgba(47, 191, 113, 0.16), transparent 28rem),
        #101513;
    text-align: center;
}

.recap-state h1[b-oi85ka8z17] {
    margin: 1rem 0 0;
    color: #ffffff;
    font-size: clamp(1.5rem, 5vw, 2.5rem);
    font-weight: 900;
    letter-spacing: -0.04em;
}

.recap-state p[b-oi85ka8z17] {
    margin: 0.45rem 0 0;
    color: rgba(238, 246, 242, 0.62);
    font-size: 0.9rem;
}

.recap-state-pulse[b-oi85ka8z17],
.recap-state-mark[b-oi85ka8z17] {
    width: 3.6rem;
    height: 3.6rem;
    display: grid;
    place-items: center;
    border: 1px solid rgba(103, 242, 177, 0.55);
    border-radius: 50%;
    background: rgba(103, 242, 177, 0.12);
    color: #8bf7c2;
    font-size: 1.2rem;
    font-weight: 950;
}

.recap-state-pulse[b-oi85ka8z17] {
    box-shadow: 0 0 0 0 rgba(103, 242, 177, 0.32);
    animation: recap-pulse-b-oi85ka8z17 1.7s ease-out infinite;
}

.recap-state-link[b-oi85ka8z17] {
    margin-top: 1.2rem;
    padding: 0.65rem 0.95rem;
    border-radius: 999px;
    background: #67f2b1;
    color: #102018;
    font-size: 0.78rem;
    font-weight: 900;
    text-decoration: none;
}

@keyframes recap-card-enter-b-oi85ka8z17 {
    from {
        opacity: 0;
        transform: translateY(10px) scale(0.992);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes recap-pulse-b-oi85ka8z17 {
    70% {
        box-shadow: 0 0 0 1.1rem rgba(103, 242, 177, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(103, 242, 177, 0);
    }
}

@media (max-width: 700px) {
    .recap-page[b-oi85ka8z17] {
        min-height: 500px;
    }

    .recap-toolbar[b-oi85ka8z17] {
        grid-template-columns: auto minmax(0, 1fr) auto;
        gap: 0.55rem;
        padding: 0.75rem;
    }

    .recap-toolbar-button[b-oi85ka8z17] {
        min-width: 2.55rem;
        padding: 0.55rem 0.66rem;
    }

    .recap-toolbar-button > span[b-oi85ka8z17] {
        display: none;
    }

    .recap-brand[b-oi85ka8z17] {
        justify-self: center;
    }

    .recap-map-name[b-oi85ka8z17] {
        max-width: 7rem;
        min-height: 2.55rem;
        padding: 0.5rem 0.72rem;
        font-size: 0.68rem;
    }

    .recap-map-picker[b-oi85ka8z17] {
        min-height: 2.55rem;
        padding: 0.3rem;
    }

    .recap-map-picker > span[b-oi85ka8z17] {
        display: none;
    }

    .recap-map-picker select[b-oi85ka8z17] {
        width: 7.2rem;
        max-width: 26vw;
        padding-left: 0.5rem;
        font-size: 0.68rem;
    }

    .recap-story[b-oi85ka8z17] {
        bottom: max(0.72rem, env(safe-area-inset-bottom));
        width: calc(100% - 1rem);
    }

    .recap-progress[b-oi85ka8z17] {
        gap: 0.18rem;
        margin-bottom: 0.38rem;
    }

    .recap-card[b-oi85ka8z17] {
        min-height: 222px;
        padding: 1rem 1.05rem 0.92rem;
        border-radius: 17px;
    }

    .recap-card-primary[b-oi85ka8z17] {
        font-size: clamp(2.05rem, 12vw, 3.25rem);
    }

    .recap-card > p[b-oi85ka8z17] {
        font-size: 0.79rem;
        line-height: 1.42;
    }

    .recap-card-footer[b-oi85ka8z17] {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.18rem;
        padding-top: 0.6rem;
    }

    .recap-card-footer span[b-oi85ka8z17] {
        max-width: 100%;
        text-align: left;
    }

    .recap-controls[b-oi85ka8z17] {
        margin-top: 0.45rem;
    }
}

@media (max-height: 690px) {
    .recap-card[b-oi85ka8z17] {
        min-height: 198px;
        padding-top: 0.95rem;
        padding-bottom: 0.85rem;
    }

    .recap-card-primary[b-oi85ka8z17] {
        font-size: clamp(2rem, 6.4vw, 3.2rem);
    }

    .recap-card > p[b-oi85ka8z17] {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .recap-controls button[b-oi85ka8z17] {
        width: 2.35rem;
        height: 2.35rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .recap-card[b-oi85ka8z17],
    .recap-state-pulse[b-oi85ka8z17] {
        animation: none;
    }

    .recap-toolbar-button[b-oi85ka8z17],
    .recap-controls button[b-oi85ka8z17],
    .recap-progress button span[b-oi85ka8z17] {
        transition: none;
    }
}
