/* /Common/Components/AppDialog.razor.rz.scp.css */
.adlg-header[b-e2nrojuufm] {
    position: relative;
    display: flex;
    align-items: stretch;
    height: 52px;
    background: #ffffff;
    overflow: hidden;
    border-bottom: 1px solid rgba(15, 23, 42, 0.1);
}

.adlg-title[b-e2nrojuufm] {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 0 72px 0 18px;
    font-size: 0.9375rem;
    font-weight: 700;
    color: #1e293b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1;
}

.adlg-seg[b-e2nrojuufm] {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 84px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 20px;
    background: #ea580c;
    clip-path: polygon(18px 0%, 100% 0%, 100% 100%, 0% 100%);
}

.adlg-header--destructive .adlg-seg[b-e2nrojuufm] {
    background: #dc2626;
}

.adlg-close-btn[b-e2nrojuufm] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.15);
    border: 1.5px solid rgba(255, 255, 255, 0.5);
    cursor: pointer;
    color: #ffffff;
    transition: background 0.15s, border-color 0.15s;
    outline: none;
    flex-shrink: 0;
}

.adlg-close-btn:hover[b-e2nrojuufm] {
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.8);
}

.adlg-close-btn:focus-visible[b-e2nrojuufm] {
    background: rgba(255, 255, 255, 0.3);
    border-color: #ffffff;
}

.adlg-close-btn svg[b-e2nrojuufm] {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    display: block;
}
/* /Common/Components/MobileTimeInput.razor.rz.scp.css */
/* ── Desktop: show text field, hide numpad ── */
.desktop-time-input[b-c55twkdfph] {
    display: block;
}

.mobile-time-input[b-c55twkdfph] {
    display: none;
}

/* ── Mobile: hide text field, show numpad trigger ── */
@media (max-width: 767.98px) {
    .desktop-time-input[b-c55twkdfph] {
        display: none;
    }

    .mobile-time-input[b-c55twkdfph] {
        display: block;
    }
}

/* ── Time display button ── */
.time-display-btn[b-c55twkdfph] {
    display: block;
    width: 100%;
    padding: 0.625rem 0.875rem;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.23);
    border-radius: 4px;
    font-size: 1rem;
    font-family: inherit;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
    text-align: left;
    color: inherit;
    cursor: pointer;
    transition: border-color 0.15s;
}

.time-display-btn:hover:not(:disabled)[b-c55twkdfph] {
    border-color: rgba(0, 0, 0, 0.6);
}

.time-display-btn.is-active[b-c55twkdfph] {
    border-color: #ea580c;
    outline: 2px solid rgba(234, 88, 12, 0.2);
}

.time-display-btn:disabled[b-c55twkdfph] {
    opacity: 0.45;
    cursor: default;
}

/* ── Number pad ── */
.time-numpad[b-c55twkdfph] {
    margin-top: 0.5rem;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.numpad-display[b-c55twkdfph] {
    padding: 0.75rem 1rem;
    font-size: 1.5rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.06em;
    text-align: center;
    background: #f8f9fa;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    color: #0f172a;
}

.numpad-grid[b-c55twkdfph] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.numpad-key[b-c55twkdfph] {
    padding: 0;
    min-height: 56px;
    border: none;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    border-right: 1px solid rgba(0, 0, 0, 0.06);
    background: #fff;
    font-size: 1.125rem;
    font-weight: 500;
    font-family: inherit;
    cursor: pointer;
    transition: background 0.1s;
    color: #0f172a;
}

.numpad-key:nth-child(3n)[b-c55twkdfph] {
    border-right: none;
}

.numpad-key:active[b-c55twkdfph] {
    background: #f0f0f0;
}

.numpad-key--action[b-c55twkdfph] {
    font-size: 0.875rem;
    font-weight: 700;
    color: #ea580c;
}
/* /Common/Components/RichTextEditor.razor.rz.scp.css */
.rich-text-editor-surface:empty[b-qu7yfdit18]::before {
    content: attr(data-placeholder);
    color: var(--mud-palette-text-secondary);
    pointer-events: none;
    cursor: text;
}
/* /Common/Components/TimeInput.razor.rz.scp.css */
.time-input-wrapper[b-z3miswl2dr] {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 100%;
    min-width: 7.5rem;
    padding: 6px 12px;
    border: 1.5px solid rgba(0, 0, 0, 0.23);
    border-radius: 10px;
    background: transparent;
    cursor: text;
    box-sizing: border-box;
    transition: border-color 0.15s;
}

.time-input-wrapper:hover:not(.ti-disabled)[b-z3miswl2dr] {
    border-color: rgba(0, 0, 0, 0.87);
}

.time-input-wrapper.ti-focused[b-z3miswl2dr] {
    border: 2px solid #ea580c;
    padding: 5px 11px;
}

.time-input-wrapper.ti-disabled[b-z3miswl2dr] {
    opacity: 0.45;
    cursor: default;
}

/* Covers the full wrapper so any tap/click focuses the hidden input */
.time-input-hidden[b-z3miswl2dr] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    border: none;
    background: transparent;
    cursor: text;
    caret-color: transparent;
    font-size: 16px; /* prevents iOS auto-zoom on focus */
    -webkit-tap-highlight-color: transparent;
}

.time-input-display[b-z3miswl2dr] {
    display: flex;
    align-items: center;
    font-size: 0.9375rem;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
    line-height: 1.5;
    pointer-events: none;
    user-select: none;
    position: relative;
    z-index: 1;
}
/* /Common/Components/WizardStepDisplay.razor.rz.scp.css */
.adlg-step-ind[b-lay2cul8tc] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.96);
}

.adlg-step-num[b-lay2cul8tc] {
    font-family: 'Roboto Mono', 'Courier New', monospace;
    font-size: 1.0625rem;
    font-weight: 900;
    letter-spacing: 0.02em;
    white-space: nowrap;
}
/* /Common/Layout/MainLayout.razor.rz.scp.css */
/* ── Layout shell ── */
.admin-layout[b-9o4ayetuln] {
    display: flex;
    min-height: 100vh;
    background: #f5efe7;
}

/* ── Sidebar ── */
.admin-sidebar[b-9o4ayetuln] {
    width: 240px;
    flex-shrink: 0;
    background: #0f1724;
    display: flex;
    flex-direction: column;
    position: sticky;
    top: 0;
    height: 100vh;
    overflow-y: auto;
    scrollbar-width: none;
    z-index: 50;
}

.admin-sidebar[b-9o4ayetuln]::-webkit-scrollbar {
    display: none;
}

/* ── Logo / wordmark ── */
.sidebar-logo-link[b-9o4ayetuln] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.75rem 1.5rem 1.5rem;
    text-decoration: none;
    flex-shrink: 0;
}

.sidebar-logo-link:hover[b-9o4ayetuln] {
    text-decoration: none;
}

.sidebar-wordmark[b-9o4ayetuln] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3rem;
    user-select: none;
}

.sidebar-wordmark-top[b-9o4ayetuln] {
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 1;
}

.sidebar-wordmark-line1[b-9o4ayetuln] {
    font-size: 1.125rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    color: rgba(255, 255, 255, 0.95);
    line-height: 1.1;
}

.sidebar-wordmark-line2[b-9o4ayetuln] {
    font-size: 1.125rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    color: #fb923c;
    line-height: 1.1;
}

.sidebar-wordmark-tagline[b-9o4ayetuln] {
    font-size: 0.5625rem;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.32);
    padding-top: 0.2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    width: 100%;
    text-align: center;
}

/* ── Nav items ── */
.sidebar-nav[b-9o4ayetuln] {
    flex: 1;
    list-style: none;
    margin: 0;
    padding: 0.5rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.sidebar-nav li[b-9o4ayetuln] {
    list-style: none;
}

.sidebar-link[b-9o4ayetuln] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 0.875rem;
    border-radius: 0.625rem;
    text-decoration: none;
    color: rgba(255, 255, 255, 0.58);
    font-size: 0.875rem;
    font-weight: 600;
    transition: background 0.15s, color 0.15s;
    white-space: nowrap;
    overflow: hidden;
}

.sidebar-link:hover[b-9o4ayetuln] {
    background: rgba(255, 255, 255, 0.07);
    color: rgba(255, 255, 255, 0.9);
    text-decoration: none;
}

.sidebar-link.is-active[b-9o4ayetuln] {
    background: rgba(234, 88, 12, 0.14);
    color: #fb923c;
}

.sidebar-link.is-active:hover[b-9o4ayetuln] {
    background: rgba(234, 88, 12, 0.2);
    color: #fb923c;
}

.sidebar-icon[b-9o4ayetuln] {
    width: 1.125rem;
    height: 1.125rem;
    flex-shrink: 0;
}

/* ── Section label (Navigation / event name) ── */
.sidebar-section-label[b-9o4ayetuln] {
    padding: 0.625rem 0.875rem 0.25rem;
    font-size: 0.5625rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.28);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-section-label-text[b-9o4ayetuln] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Event-specific sidebar section ── */
.sidebar-event-section[b-9o4ayetuln] {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    margin-top: 0.5rem;
    padding-top: 0.25rem;
}

.sidebar-event-actions[b-9o4ayetuln] {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    margin-top: 0.25rem;
    padding-top: 0.25rem;
}

.sidebar-action-btn[b-9o4ayetuln] {
    width: 100%;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    font-family: inherit;
}

.sidebar-action-btn:disabled[b-9o4ayetuln] {
    opacity: 0.35;
    cursor: not-allowed;
    pointer-events: none;
}

/* ── Övrigt collapsible submenu ── */
.sidebar-submenu[b-9o4ayetuln] {
    display: flex;
    flex-direction: column;
}

.sidebar-submenu-toggle[b-9o4ayetuln] {
    justify-content: flex-start;
}

.sidebar-submenu-chevron[b-9o4ayetuln] {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    margin-left: auto;
    transition: transform 0.2s ease;
    opacity: 0.6;
}

.sidebar-submenu-chevron--open[b-9o4ayetuln] {
    transform: rotate(180deg);
}

.sidebar-submenu-items[b-9o4ayetuln] {
    display: none;
    flex-direction: column;
    gap: 0.125rem;
}

.sidebar-submenu-items--open[b-9o4ayetuln] {
    display: flex;
}

.sidebar-submenu-item[b-9o4ayetuln] {
    color: rgba(255, 255, 255, 0.45);
}

.sidebar-submenu-item:hover[b-9o4ayetuln] {
    color: #f87171;
}

/* ── Footer (user + logout) ── */
.sidebar-footer[b-9o4ayetuln] {
    flex-shrink: 0;
    padding: 0.75rem;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.sidebar-user[b-9o4ayetuln] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.5rem 0.5rem;
    min-width: 0;
}

.sidebar-user__info[b-9o4ayetuln] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.sidebar-user__name[b-9o4ayetuln] {
    font-size: 0.8125rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.92);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-user__email[b-9o4ayetuln] {
    font-size: 0.6875rem;
    color: rgba(255, 255, 255, 0.4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-logout[b-9o4ayetuln] {
    color: rgba(255, 255, 255, 0.45);
    font-size: 0.8125rem;
}

/* ── Settings panel ── */
.admin-settings-panel[b-9o4ayetuln] {
    width: 0;
    overflow: hidden;
    background: #ffffff;
    border-right: 1px solid rgba(15, 23, 42, 0.08);
    transition: width 0.25s ease;
    display: flex;
    flex-direction: column;
    position: sticky;
    top: 0;
    height: 100vh;
    flex-shrink: 0;
    z-index: 46;
}

.admin-settings-panel--open[b-9o4ayetuln] {
    width: 360px;
}

.settings-panel__inner[b-9o4ayetuln] {
    width: 360px;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.settings-panel__header[b-9o4ayetuln] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    flex-shrink: 0;
}

.settings-panel__title[b-9o4ayetuln] {
    font-size: 0.875rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: 0.02em;
}

.settings-panel__close-btn[b-9o4ayetuln] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.3rem;
    border-radius: 0.375rem;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, color 0.15s;
    flex-shrink: 0;
}

.settings-panel__close-btn:hover[b-9o4ayetuln] {
    background: rgba(15, 23, 42, 0.06);
    color: #0f172a;
}

.settings-panel__content[b-9o4ayetuln] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
}

.settings-panel__footer[b-9o4ayetuln] {
    padding: 0.75rem 1rem;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    flex-shrink: 0;
}

/* ── Main content ── */
.admin-main[b-9o4ayetuln] {
    flex: 1;
    min-width: 0;
}

/* ── Error UI ── */
#blazor-error-ui[b-9o4ayetuln] {
    color-scheme: light only;
    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-9o4ayetuln] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

/* ── Hide settings panel on non-desktop ── */
@media (max-width: 1279.98px) {
    .admin-settings-panel[b-9o4ayetuln] {
        display: none !important;
    }
}

/* ── Tablet: collapse sidebar to icon-only ── */
@media (min-width: 768px) and (max-width: 1279.98px) {
    .admin-sidebar[b-9o4ayetuln] {
        width: 64px;
        overflow: hidden;
    }

    .sidebar-logo-link[b-9o4ayetuln] {
        padding: 1.25rem 0;
        justify-content: center;
    }

    .sidebar-wordmark-top[b-9o4ayetuln] {
        flex-direction: row;
        gap: 0;
    }

    .sidebar-wordmark-line1[b-9o4ayetuln],
    .sidebar-wordmark-line2[b-9o4ayetuln] {
        font-size: 0.5rem;
        letter-spacing: 0.06em;
        line-height: 1;
    }

    .sidebar-wordmark-tagline[b-9o4ayetuln] {
        display: none;
    }

    .sidebar-nav[b-9o4ayetuln] {
        padding: 0.75rem 0.5rem;
        align-items: center;
    }

    .sidebar-link[b-9o4ayetuln] {
        justify-content: center;
        padding: 0.75rem 0;
        gap: 0;
        border-radius: 0.5rem;
    }

    .sidebar-link span[b-9o4ayetuln] {
        display: none;
    }

    .sidebar-icon[b-9o4ayetuln] {
        width: 1.375rem;
        height: 1.375rem;
    }

    .sidebar-footer[b-9o4ayetuln] {
        padding: 0.5rem;
        align-items: center;
    }

    .sidebar-user[b-9o4ayetuln] {
        display: none;
    }

    .sidebar-section-label[b-9o4ayetuln] {
        display: none;
    }

    .sidebar-event-actions[b-9o4ayetuln] {
        padding-top: 0.25rem;
        align-items: center;
    }

    .sidebar-action-btn[b-9o4ayetuln] {
        justify-content: center;
        padding: 0.75rem 0;
        gap: 0;
        border-radius: 0.5rem;
    }

    .sidebar-action-btn span[b-9o4ayetuln] {
        display: none;
    }

    .sidebar-submenu-toggle[b-9o4ayetuln] {
        display: none;
    }

    .sidebar-submenu-items[b-9o4ayetuln] {
        display: flex;
    }

    .sidebar-submenu-item[b-9o4ayetuln] {
        justify-content: center;
        padding: 0.75rem 0;
    }

    .sidebar-submenu-chevron[b-9o4ayetuln] {
        display: none;
    }

    .sidebar-logout[b-9o4ayetuln] {
        justify-content: center;
        padding: 0.75rem 0;
        gap: 0;
        border-radius: 0.5rem;
        width: 100%;
    }

    .sidebar-logout span[b-9o4ayetuln] {
        display: none;
    }
}

/* ── Mobile-only elements: hidden on desktop/tablet ── */
.admin-mobile-topbar[b-9o4ayetuln],
.admin-mobile-bottomnav[b-9o4ayetuln] {
    display: none;
}

/* ── Mobile: bottom nav bar ── */
@media (max-width: 767.98px) {
    .admin-layout[b-9o4ayetuln] {
        flex-direction: column;
    }

    .admin-sidebar[b-9o4ayetuln] {
        display: none;
    }

    /* Slim branding strip at top */
    .admin-mobile-topbar[b-9o4ayetuln] {
        display: flex;
        align-items: center;
        background: #0f1724;
        height: 48px;
        flex-shrink: 0;
        position: sticky;
        top: 0;
        z-index: 50;
        padding: 0 1rem;
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
    }

    .mobile-topbar-logo[b-9o4ayetuln] {
        display: flex;
        align-items: center;
        text-decoration: none;
    }

    .mobile-topbar-logo:hover[b-9o4ayetuln] {
        text-decoration: none;
    }

    .mobile-topbar-logo .sidebar-wordmark-top[b-9o4ayetuln] {
        flex-direction: row;
        gap: 0;
    }

    .mobile-topbar-logo .sidebar-wordmark-line1[b-9o4ayetuln],
    .mobile-topbar-logo .sidebar-wordmark-line2[b-9o4ayetuln] {
        font-size: 0.875rem;
        letter-spacing: 0.1em;
    }

    /* Make room for fixed bottom bar */
    .admin-main[b-9o4ayetuln] {
        padding-bottom: 64px;
    }

    /* Fixed bottom nav bar */
    .admin-mobile-bottomnav[b-9o4ayetuln] {
        display: flex;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 64px;
        background: #0f1724;
        z-index: 100;
        border-top: 1px solid rgba(255, 255, 255, 0.07);
        box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.3);
    }


    .bottomnav-link[b-9o4ayetuln] {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0.25rem;
        color: rgba(255, 255, 255, 0.55);
        text-decoration: none;
        font-size: 0.6875rem;
        font-weight: 600;
        letter-spacing: 0.02em;
        transition: color 0.15s;
        min-height: 64px;
    }

    .bottomnav-link:hover[b-9o4ayetuln] {
        color: rgba(255, 255, 255, 0.85);
        text-decoration: none;
    }

    .bottomnav-link.is-active[b-9o4ayetuln] {
        color: #fb923c;
    }

    .bottomnav-icon[b-9o4ayetuln] {
        width: 1.375rem;
        height: 1.375rem;
    }

}
/* /Common/Pages/Login.razor.rz.scp.css */
/* ── Section wrapper: covers full viewport above all layout chrome ── */
.login-section[b-htpbwzze3z] {
    position: fixed;
    inset: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 200;
}

/* ════════════════════
   HERO  (top half)
   ════════════════════ */
.login-hero[b-htpbwzze3z] {
    position: relative;
    flex: 0 0 58dvh;
    flex-basis: 58vh;
    min-height: 300px;
    background-image: url('/images/about_hero.png');
    background-size: cover;
    background-position: center 28%;
    overflow: hidden;
}

.login-hero-overlay[b-htpbwzze3z] {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(10, 18, 32, 0.22) 0%,
        rgba(10, 18, 32, 0.28) 45%,
        rgba(10, 18, 32, 0.6)  80%,
        rgba(10, 18, 32, 0.78) 100%
    );
}

.login-hero-content[b-htpbwzze3z] {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 4rem;
}

/* Wordmark over hero */
.login-hero-wordmark[b-htpbwzze3z] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.55rem;
    user-select: none;
}

.login-hero-wm-lines[b-htpbwzze3z] {
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 1.05;
}

.login-hero-wm-line1[b-htpbwzze3z] {
    font-size: clamp(2.25rem, 5vw, 4rem);
    font-weight: 900;
    letter-spacing: 0.16em;
    color: rgba(255, 255, 255, 0.96);
    text-shadow: 0 2px 24px rgba(0, 0, 0, 0.55);
    line-height: 1.08;
}

.login-hero-wm-line2[b-htpbwzze3z] {
    font-size: clamp(2.25rem, 5vw, 4rem);
    font-weight: 900;
    letter-spacing: 0.16em;
    color: #fb923c;
    text-shadow: 0 2px 24px rgba(234, 88, 12, 0.5);
    line-height: 1.08;
}

.login-hero-wm-tagline[b-htpbwzze3z] {
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.42);
    padding-top: 0.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    width: 100%;
    text-align: center;
}

/* Wave: hero → CTA transition */
.login-hero-wave[b-htpbwzze3z] {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 60px;
    z-index: 2;
    display: block;
}

@media (min-width: 640px) {
    .login-hero-wave[b-htpbwzze3z] {
        height: 72px;
    }
}

/* ════════════════════
   CTA  (bottom half)
   ════════════════════ */
.login-cta[b-htpbwzze3z] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.5rem 1.5rem 4rem;
    background: #f5efe7;
    text-align: center;
}

.login-cta-heading[b-htpbwzze3z] {
    font-size: 1.75rem;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #0f172a;
    margin: 0 0 0.625rem;
    line-height: 1.2;
}

@media (min-width: 640px) {
    .login-cta-heading[b-htpbwzze3z] {
        font-size: 2.25rem;
    }
}

.login-cta-sub[b-htpbwzze3z] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: #475569;
    margin: 0 0 2.5rem;
    max-width: 26rem;
    line-height: 1.65;
}

/* Google CTA button */
.login-google-btn[b-htpbwzze3z] {
    display: inline-flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 2.25rem;
    background: #0f1724;
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.9375rem;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: 0.01em;
    box-shadow: 0 8px 32px rgba(15, 23, 42, 0.22);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.15s;
}

.login-google-btn:hover[b-htpbwzze3z] {
    transform: translateY(-3px);
    box-shadow: 0 20px 48px rgba(15, 23, 42, 0.3);
    background: #1a3050;
    color: white;
    text-decoration: none;
}

.login-google-btn:active[b-htpbwzze3z] {
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.22);
}

.login-google-btn:focus-visible[b-htpbwzze3z] {
    outline: 2px solid #ea580c;
    outline-offset: 4px;
}

.login-google-icon[b-htpbwzze3z] {
    width: 1.25rem;
    height: 1.25rem;
    flex-shrink: 0;
}
/* /Common/Pages/NotFound.razor.rz.scp.css */
.not-found-page[b-2ie6sid4gq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 3rem 1.5rem;
    min-height: 60vh;
    max-width: 480px;
    margin: 0 auto;
}

.not-found-image[b-2ie6sid4gq] {
    width: 100%;
    max-width: 300px;
    border-radius: var(--admin-radius-lg);
    margin-bottom: 2.5rem;
    box-shadow: var(--admin-shadow-hover);
}

.not-found-eyebrow[b-2ie6sid4gq] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: var(--admin-primary);
    margin: 0 0 0.5rem;
}

.not-found-title[b-2ie6sid4gq] {
    font-size: 2rem;
    font-weight: 900;
    color: var(--admin-text);
    letter-spacing: -0.025em;
    line-height: 1.15;
    margin: 0 0 0.75rem;
}

.not-found-body[b-2ie6sid4gq] {
    font-size: 0.9375rem;
    color: var(--admin-text-muted);
    margin: 0 0 2rem;
    line-height: 1.6;
}
/* /Common/Toast/AppToastProvider.razor.rz.scp.css */
.app-toasts[b-u8dcdgq8yg] {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 8px;
    z-index: 9999;
    pointer-events: none;
}

.app-toast[b-u8dcdgq8yg] {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 16px 9px 12px;
    border-radius: 999px;
    background: #1e293b;
    color: #f1f5f9;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.4;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.28), 0 1px 4px rgba(0, 0, 0, 0.18);
    white-space: nowrap;
    pointer-events: all;
    animation: toast-enter-b-u8dcdgq8yg 0.2s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.app-toast--exit[b-u8dcdgq8yg] {
    animation: toast-exit-b-u8dcdgq8yg 0.18s ease-in both;
}

.app-toast__icon[b-u8dcdgq8yg] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.app-toast--success .app-toast__icon[b-u8dcdgq8yg] {
    color: #4ade80;
}

.app-toast--error .app-toast__icon[b-u8dcdgq8yg] {
    color: #f87171;
}

.app-toast__text[b-u8dcdgq8yg] {
    flex: 1;
}

.app-toast__close[b-u8dcdgq8yg] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 4px;
    padding: 2px;
    background: none;
    border: none;
    color: rgba(241, 245, 249, 0.5);
    cursor: pointer;
    border-radius: 50%;
    transition: color 0.12s, background 0.12s;
    font-family: inherit;
    flex-shrink: 0;
}

.app-toast__close:hover[b-u8dcdgq8yg] {
    color: #f1f5f9;
    background: rgba(255, 255, 255, 0.1);
}

@keyframes toast-enter-b-u8dcdgq8yg {
    from {
        opacity: 0;
        transform: translateY(10px) scale(0.97);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes toast-exit-b-u8dcdgq8yg {
    from {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
    to {
        opacity: 0;
        transform: translateY(6px) scale(0.97);
    }
}

@media (max-width: 767.98px) {
    .app-toasts[b-u8dcdgq8yg] {
        bottom: 72px; /* clear mobile bottom nav */
    }
}
/* /Common/UserAvatar.razor.rz.scp.css */
.user-avatar[b-esg0fui279] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: #fff;
    font-weight: 700;
    line-height: 1;
    flex-shrink: 0;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.15);
    user-select: none;
}
/* /Events/Components/EventScheduleSettingsForm.razor.rz.scp.css */
.ess-card-header[b-5uv607huv9] {
    padding: 10px 12px 8px;
    background: var(--mud-palette-background-grey);
    border-radius: 3px 3px 0 0;
}

.ess-card-header--toggle[b-5uv607huv9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    user-select: none;
    transition: background 0.15s;
}

.ess-card-header--toggle:hover[b-5uv607huv9] {
    background: rgba(15, 23, 42, 0.05);
}

.ess-cat-chip[b-5uv607huv9] {
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 2px 7px;
    border-radius: 999px;
    color: #1e293b;
    line-height: 1.4;
}

.ess-cat-chip--herr[b-5uv607huv9] { background: #bae6fd; }
.ess-cat-chip--dam[b-5uv607huv9]  { background: #fecdd3; }
.ess-cat-chip--mix[b-5uv607huv9]  { background: #ddd6fe; }

/* ── Nuvarande lag section heading ── */
.ess-section-heading[b-5uv607huv9] {
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #0f172a;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.ess-section-heading[b-5uv607huv9]::before {
    content: '';
    width: 3px;
    height: 0.875rem;
    background: #ea580c;
    border-radius: 2px;
    flex-shrink: 0;
}

/* ── Category breakdown table ── */
.ess-cat-table[b-5uv607huv9] {
    display: grid;
    grid-template-columns: 52px 4.5rem 1rem 4.5rem 1rem 3.5rem;
    align-items: center;
    row-gap: 0.375rem;
    column-gap: 0.375rem;
}

.ess-cat-num[b-5uv607huv9] {
    font-size: 0.875rem;
    color: rgba(15, 23, 42, 0.87);
}

.ess-cat-unit[b-5uv607huv9] {
    font-size: 0.75em;
    color: #475569;
}

.ess-cat-sep[b-5uv607huv9] {
    font-size: 0.875rem;
    color: #475569;
    text-align: center;
}

/* ── Two-column layout (dialog / wizard mode) ── */
.ess-form-layout[b-5uv607huv9] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.ess-form-main[b-5uv607huv9] {
    flex: 7;
    min-width: 0;
}

.ess-form-preview[b-5uv607huv9] {
    flex: 5;
    min-width: 0;
}

/* ── Flyout toggle button (sidebar / desktop mode) ── */
.ess-flyout-toggle[b-5uv607huv9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    background: var(--mud-palette-background-grey);
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 4px;
    cursor: pointer;
    user-select: none;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    color: rgba(0, 0, 0, 0.87);
}

.ess-flyout-toggle:hover[b-5uv607huv9] {
    background: rgba(15, 23, 42, 0.05);
}

.ess-flyout-toggle--active[b-5uv607huv9] {
    background: rgba(234, 88, 12, 0.06);
    border-color: rgba(234, 88, 12, 0.3);
    color: #ea580c;
}

.ess-flyout-toggle--active:hover[b-5uv607huv9] {
    background: rgba(234, 88, 12, 0.10);
}

.ess-flyout-toggle__label[b-5uv607huv9] {
    font-size: 0.875rem;
    font-weight: 600;
}

/* ── Flyout preview panel ── */
.ess-preview-flyout[b-5uv607huv9] {
    position: fixed;
    left: calc(var(--admin-sidebar-w) + var(--admin-panel-w));
    top: 0;
    width: 320px;
    height: 100vh;
    background: #ffffff;
    border-left: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 6px 0 24px rgba(15, 23, 42, 0.1);
    z-index: 39;
    display: flex;
    flex-direction: column;
    animation: ess-flyout-slide-in-b-5uv607huv9 0.2s ease both;
}

@keyframes ess-flyout-slide-in-b-5uv607huv9 {
    from { opacity: 0; transform: translateX(-10px); }
    to   { opacity: 1; transform: translateX(0); }
}

.ess-flyout-header[b-5uv607huv9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    flex-shrink: 0;
}

.ess-flyout-title[b-5uv607huv9] {
    font-size: 0.875rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: 0.02em;
}

.ess-flyout-close[b-5uv607huv9] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.3rem;
    border-radius: 0.375rem;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, color 0.15s;
    flex-shrink: 0;
}

.ess-flyout-close:hover[b-5uv607huv9] {
    background: rgba(15, 23, 42, 0.06);
    color: #0f172a;
}

.ess-flyout-content[b-5uv607huv9] {
    flex: 1;
    overflow-y: auto;
    padding: 1.25rem;
}

@media (max-width: 1279.98px) {
    .ess-preview-flyout[b-5uv607huv9] {
        display: none !important;
    }
}

/* ── Mobile-only inline preview toggle (dialog, mobile viewport) ── */
.ess-preview-mobile-toggle[b-5uv607huv9] {
    display: none;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    background: var(--mud-palette-background-grey);
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 4px;
    cursor: pointer;
    user-select: none;
    transition: background 0.15s;
    color: rgba(0, 0, 0, 0.87);
}

.ess-preview-mobile-toggle:hover[b-5uv607huv9] {
    background: rgba(15, 23, 42, 0.05);
}

.ess-preview-mobile-toggle--open[b-5uv607huv9] {
    border-radius: 4px 4px 0 0;
    border-bottom-color: transparent;
}

@media (max-width: 639.98px) {
    .ess-form-layout[b-5uv607huv9] {
        flex-direction: column;
        align-items: stretch;
    }

    .ess-form-main[b-5uv607huv9],
    .ess-form-preview[b-5uv607huv9] {
        flex: none;
    }

    .ess-preview-mobile-toggle[b-5uv607huv9] {
        display: flex;
    }

    .ess-preview-inline-body[b-5uv607huv9] {
        display: none;
    }

    .ess-preview-inline-body--open[b-5uv607huv9] {
        display: block;
        margin-top: 0.5rem;
    }
}
/* /Events/Components/FinalsBracketView.razor.rz.scp.css */
.finals-bracket__scroll[b-o60m13y3n8] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.finals-bracket__grid[b-o60m13y3n8] {
    display: grid;
    grid-template-columns: repeat(4, minmax(10rem, 1fr));
    gap: 1rem;
    align-items: start;
    min-width: min(100%, 52rem);
}

.finals-bracket__column[b-o60m13y3n8] {
    position: relative;
    padding-left: 0.75rem;
    border-left: 1px solid var(--mud-palette-lines-default);
}

.finals-bracket__column:first-child[b-o60m13y3n8] {
    padding-left: 0;
    border-left: none;
}

.finals-bracket__round-title[b-o60m13y3n8] {
    display: block;
    margin-bottom: 0.5rem;
    letter-spacing: 0.06em;
}

.finals-bracket__card[b-o60m13y3n8] {
    border: 1px solid var(--mud-palette-lines-default);
    transition: background-color 0.15s ease, border-color 0.15s ease;
}

.finals-bracket__card:hover[b-o60m13y3n8] {
    background-color: var(--mud-palette-table-hover);
}

.finals-bracket__lanes[b-o60m13y3n8] {
    font-size: 0.8125rem;
}

.finals-bracket__lane[b-o60m13y3n8] {
    display: flex;
    gap: 0.35rem;
    align-items: baseline;
    padding: 0.15rem 0;
    border-top: 1px solid var(--mud-palette-divider);
}

.finals-bracket__lane:first-child[b-o60m13y3n8] {
    border-top: none;
    padding-top: 0;
}

.finals-bracket__lane-num[b-o60m13y3n8] {
    flex: 0 0 1.25rem;
    color: var(--mud-palette-text-secondary);
    font-variant-numeric: tabular-nums;
}

.finals-bracket__lane-name[b-o60m13y3n8] {
    min-width: 0;
    word-break: break-word;
}

.finals-bracket__lane--draggable[b-o60m13y3n8] {
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
}

.finals-bracket__lane--draggable:active[b-o60m13y3n8] {
    cursor: grabbing;
}

.cursor-pointer[b-o60m13y3n8] {
    cursor: pointer;
}

.finals-bracket__lane--tap-selected[b-o60m13y3n8] {
    outline: 2px solid #ea580c;
    background: rgba(234, 88, 12, 0.12);
    border-radius: 4px;
    padding: 2px 4px;
}
/* /Events/Components/QualifierLeaderboardView.razor.rz.scp.css */
.lb-card[b-flaeaquye8] {
    background: var(--mud-palette-surface);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
}

.lb-accent-bar[b-flaeaquye8] {
    height: 4px;
}

.lb-accent-bar--male[b-flaeaquye8]   { background: #1976d2; }
.lb-accent-bar--female[b-flaeaquye8] { background: #c2185b; }
.lb-accent-bar--mix[b-flaeaquye8]    { background: #7b1fa2; }

.lb-empty[b-flaeaquye8] {
    padding: 1rem;
    color: var(--mud-palette-text-secondary);
    font-size: 0.875rem;
    margin: 0;
}

.lb-row[b-flaeaquye8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.55rem 1rem;
    border-bottom: 1px solid var(--mud-palette-divider);
    transition: background 0.12s;
}

.lb-row:last-child[b-flaeaquye8] {
    border-bottom: none;
}

.lb-row--finalist[b-flaeaquye8] {
    background: rgba(234, 88, 12, 0.04);
}

.lb-row--search-hit[b-flaeaquye8] {
    background: rgba(92, 107, 192, 0.12);
}

/* Rank badge */
.lb-badge[b-flaeaquye8] {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
    color: #fff;
}

.lb-badge--gold[b-flaeaquye8]     { background: #fbbf24; }
.lb-badge--silver[b-flaeaquye8]   { background: #cbd5e1; color: #475569; }
.lb-badge--bronze[b-flaeaquye8]   { background: rgba(180, 83, 9, 0.7); }
.lb-badge--finalist[b-flaeaquye8] { background: #1976d2; }
.lb-badge--default[b-flaeaquye8]  { background: #9e9e9e; }

/* Team info */
.lb-team-info[b-flaeaquye8] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.lb-team-name[b-flaeaquye8] {
    font-weight: 700;
    font-size: 0.875rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lb-team-name--match[b-flaeaquye8] {
    color: #1a237e;
}

.lb-org-name[b-flaeaquye8] {
    font-size: 0.75rem;
    color: var(--mud-palette-text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Round time pills */
.lb-rounds[b-flaeaquye8] {
    display: flex;
    gap: 4px;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.lb-round[b-flaeaquye8] {
    font-size: 0.75rem;
    font-family: ui-monospace, 'Roboto Mono', Consolas, monospace;
    padding: 2px 6px;
    border-radius: 4px;
    background: rgba(15, 23, 42, 0.06);
    color: var(--mud-palette-text-primary);
}

.lb-round--best[b-flaeaquye8] {
    background: var(--mud-palette-success);
    color: #fff;
    font-weight: 700;
}

.lb-round--warning[b-flaeaquye8] {
    background: var(--mud-palette-warning);
    color: #fff;
}

.lb-round--empty[b-flaeaquye8] {
    background: none;
    color: var(--mud-palette-text-secondary);
}

/* Finalist badge */
.lb-finalist-badge[b-flaeaquye8] {
    flex-shrink: 0;
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    background: rgba(234, 88, 12, 0.15);
    color: #c2410c;
    white-space: nowrap;
}

/* Cutoff divider */
.lb-cutoff-divider[b-flaeaquye8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 1rem;
    background: rgba(0, 0, 0, 0.02);
}

.lb-cutoff-divider[b-flaeaquye8]::before,
.lb-cutoff-divider[b-flaeaquye8]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--mud-palette-divider);
}

.lb-cutoff-label[b-flaeaquye8] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--mud-palette-text-secondary);
    white-space: nowrap;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
/* /Events/Dialogs/AddRaceEventDialog.razor.rz.scp.css */
/* ── Wizard step container — fixed height to prevent dialog jumping ── */

.wizard-step-content[b-go5jmz7pzo] {
    min-height: 500px;
}

/* ── Visual fill layout (used on short steps) ── */

.wz-fill-row[b-go5jmz7pzo] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    flex: 1;
}

.wz-step-fields[b-go5jmz7pzo] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.wz-fill-hint[b-go5jmz7pzo] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.125rem;
    background: rgba(234, 88, 12, 0.04);
    border: 1px solid rgba(234, 88, 12, 0.12);
    border-radius: 10px;
    margin-top: auto;
}

.wz-fill-icon[b-go5jmz7pzo] {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    color: #ea580c;
    opacity: 0.7;
    margin-top: 1px;
}

.wz-fill-text[b-go5jmz7pzo] {
    font-size: 0.8125rem;
    color: #64748b;
    line-height: 1.5;
}
/* /Events/Dialogs/AddTeamToEventDialog.razor.rz.scp.css */
[b-ay2id8daqt] .mud-list-item-button {
    padding: 0 !important;
}

.org-row[b-ay2id8daqt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px;
    min-height: 48px;
    gap: 8px;
}

.org-row__info[b-ay2id8daqt] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.org-row__name[b-ay2id8daqt] {
    font-size: 0.875rem;
    font-weight: 700;
    color: #0f172a;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.org-row__number[b-ay2id8daqt] {
    font-size: 0.75rem;
    color: #64748b;
}

.org-pills[b-ay2id8daqt] {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}

.org-pill[b-ay2id8daqt] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 700;
    color: #1e293b;
    white-space: nowrap;
}

.org-pill--herr[b-ay2id8daqt] { background: #bae6fd; }
.org-pill--dam[b-ay2id8daqt]  { background: #fecdd3; }
.org-pill--mix[b-ay2id8daqt]  { background: #ddd6fe; }

.org-pill__count[b-ay2id8daqt] {
    font-size: 0.65rem;
    font-weight: 600;
    opacity: 0.75;
}
/* /Events/Pages/EventDetails.razor.rz.scp.css */
/* ── Slim event header ── */
.esh[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    background: var(--admin-card);
    border-radius: var(--admin-radius-lg);
    box-shadow: var(--admin-shadow);
    padding-right: 1rem;
    height: 56px;
    margin-bottom: 0.875rem;
    /* visible (not hidden) so the presence hover tooltip can escape the header */
    overflow: visible;
    position: relative;
}

.esh[b-j1en3oomoa]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: #ea580c;
    /* round to the card corner now that the header no longer clips overflow */
    border-top-left-radius: var(--admin-radius-lg);
    border-bottom-left-radius: var(--admin-radius-lg);
}

.esh-back[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 56px;
    flex-shrink: 0;
    color: #94a3b8;
    text-decoration: none;
    transition: color 0.15s;
    padding-left: 4px;
}

.esh-back:hover[b-j1en3oomoa] {
    color: #ea580c;
    text-decoration: none;
}

.esh-body[b-j1en3oomoa] {
    flex: 1;
    min-width: 0;
}

.esh-name[b-j1en3oomoa] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: #1e293b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.2;
}

.esh-meta[b-j1en3oomoa] {
    font-size: 0.6875rem;
    color: #64748b;
    display: flex;
    align-items: center;
    gap: 0.3125rem;
    overflow: hidden;
    white-space: nowrap;
}

.esh-sep[b-j1en3oomoa] {
    opacity: 0.4;
    flex-shrink: 0;
}

.esh-badges[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-shrink: 0;
    margin-left: 0.5rem;
}

/* Live presence: other admins currently working on this event */
.esh-presence[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: 0.5rem;
}

.esh-presence__item[b-j1en3oomoa] {
    position: relative;
    display: inline-flex;
}

.esh-presence__item + .esh-presence__item[b-j1en3oomoa] {
    margin-left: -6px;
}

.esh-presence__item:hover[b-j1en3oomoa] {
    z-index: 10;
}

.esh-presence__avatar[b-j1en3oomoa] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: #ea580c;
    color: #fff;
    font-size: 0.6875rem;
    font-weight: 700;
    border: 2px solid var(--admin-card);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.15);
    cursor: default;
    transition: transform 0.12s ease;
}

.esh-presence__item:hover .esh-presence__avatar[b-j1en3oomoa] {
    transform: translateY(-1px);
}

/* Custom hover tooltip (no browser delay, fully styled).
   display:none when hidden so it never contributes to page scroll overflow;
   right-anchored so it grows leftward and never spills past the header's right edge. */
.esh-presence__tip[b-j1en3oomoa] {
    display: none;
    position: absolute;
    top: calc(100% + 9px);
    right: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    padding: 0.45rem 0.7rem;
    background: #1e293b;
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.35);
    white-space: nowrap;
    pointer-events: none;
    z-index: 100;
}

.esh-presence__item:hover .esh-presence__tip[b-j1en3oomoa] {
    display: flex;
    animation: eshTipIn-b-j1en3oomoa 0.1s ease;
}

@keyframes eshTipIn-b-j1en3oomoa {
    from {
        opacity: 0;
        transform: translateY(3px);
    }

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

.esh-presence__tip[b-j1en3oomoa]::before {
    content: '';
    position: absolute;
    bottom: 100%;
    right: 9px;
    border: 6px solid transparent;
    border-bottom-color: #1e293b;
}

.esh-presence__tip-name[b-j1en3oomoa] {
    font-weight: 700;
    font-size: 0.8125rem;
    color: #fff;
    line-height: 1.25;
}

.esh-presence__tip-tab[b-j1en3oomoa] {
    font-size: 0.6875rem;
    color: #cbd5e1;
    line-height: 1.25;
}

.esh-badge[b-j1en3oomoa] {
    display: inline-flex;
    align-items: center;
    padding: 0.1875rem 0.5625rem;
    border-radius: 999px;
    font-size: 0.5625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    white-space: nowrap;
}

.esh-badge--locked[b-j1en3oomoa] {
    background: rgba(14, 165, 233, 0.1);
    color: #0369a1;
    border: 1px solid rgba(14, 165, 233, 0.2);
}

.esh-badge--done[b-j1en3oomoa] {
    background: rgba(100, 116, 139, 0.1);
    color: #475569;
    border: 1px solid rgba(100, 116, 139, 0.2);
}

.qualifier-view-toggle .mud-button[b-j1en3oomoa] {
    text-transform: none;
}

/* Qualifier heats table (matches finals list; narrow index + start columns) */
.event-qualifier-heats-table .event-heat-th-index[b-j1en3oomoa],
.event-qualifier-heats-table .event-heat-td-index[b-j1en3oomoa] {
    width: 2.75rem;
    max-width: 3.25rem;
    white-space: nowrap;
}

.event-qualifier-heats-table .event-heat-th-start[b-j1en3oomoa],
.event-qualifier-heats-table .event-heat-td-start[b-j1en3oomoa] {
    width: 5.25rem;
    max-width: 7rem;
    white-space: nowrap;
}

.event-qualifier-heats-table .qualifier-table-row--warning[b-j1en3oomoa] {
    background-color: rgba(255, 152, 0, 0.06);
}

.event-qualifier-heats-table .qualifier-table-row--danger[b-j1en3oomoa] {
    background-color: rgba(244, 67, 54, 0.07);
}

.event-qualifier-heats-table .qualifier-lane-pill--muted[b-j1en3oomoa] {
    opacity: 0.55;
}

/* ── Current / next heat highlighting ── */

[b-j1en3oomoa] tr.heat-row--current {
    border-left: 3px solid #ea580c;
    background-color: rgba(234, 88, 12, 0.04);
}

[b-j1en3oomoa] tr.heat-row--next {
    border-left: 3px solid #0d9488;
    background-color: rgba(13, 148, 136, 0.04);
}

/* ── Drag-and-drop pill interaction ── */

.heat-pill-wrapper[b-j1en3oomoa] {
    display: inline-flex;
    border-radius: 16px;
    cursor: grab;
}

.heat-pill-wrapper:active[b-j1en3oomoa] {
    cursor: grabbing;
}

.heat-pill-wrapper--dragging[b-j1en3oomoa]  .mud-chip {
    opacity: 0.4;
}

.heat-pill-wrapper--ghost[b-j1en3oomoa] {
    cursor: copy;
}

.heat-pill-wrapper--ghost[b-j1en3oomoa]  .mud-chip,
[b-j1en3oomoa] .heat-pill--ghost {
    border-style: dashed !important;
}

.heat-pill-wrapper--tap-selected[b-j1en3oomoa] {
    cursor: pointer;
}

.heat-pill-wrapper--tap-selected[b-j1en3oomoa]  .mud-chip {
    box-shadow: 0 0 0 2px #ea580c;
}

.heat-pill-wrapper--tap-target[b-j1en3oomoa] {
    cursor: pointer;
}

/* ── Floating contextual action bar ── */

.ed-fab[b-j1en3oomoa] {
    position: fixed;
    bottom: 1rem;
    left: calc(var(--admin-sidebar-w) + 1rem);
    right: 1rem;
    height: 68px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 1.25rem;
    background: rgba(246, 246, 246, 0.95);
    border: 1px solid rgba(245, 239, 231, 0.6);
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(15, 23, 42, 0.11), 0 2px 8px rgba(15, 23, 42, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.6);
    z-index: 45;
    overflow: hidden;
    transition: left 0.25s ease;
}

/* Desktop: push action bar right when settings panel is open */
@media (min-width: 1280px) {
    .admin-layout--panel-open .ed-fab[b-j1en3oomoa] {
        left: calc(var(--admin-sidebar-w) + var(--admin-panel-w) + 1rem);
    }
}

/* Tablet: narrower sidebar */
@media (min-width: 768px) and (max-width: 1279.98px) {
    .ed-fab[b-j1en3oomoa] {
        left: calc(64px + 1rem);
    }
}

/* Mobile */
@media (max-width: 767.98px) {
    .ed-fab[b-j1en3oomoa] {
        left: 0.5rem;
        right: 0.5rem;
        bottom: calc(56px + 0.625rem);
        padding: 0 0.75rem;
        gap: 0.375rem;
        border-radius: 12px;
        z-index: 100;
    }
}

.ed-fab__spacer[b-j1en3oomoa] {
    flex: 1;
}

/* Filter pills */
.ed-fab__filters[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}

.ed-fab__pill[b-j1en3oomoa] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    padding: 0 12px;
    border-radius: 16px;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    border: 1.5px solid rgba(15, 23, 42, 0.14);
    background: rgba(255, 255, 255, 0.45);
    color: #64748b;
    font-family: inherit;
    transition: border-color 0.12s, color 0.12s, background 0.12s, box-shadow 0.12s;
    white-space: nowrap;
    line-height: 1;
    -webkit-tap-highlight-color: transparent;
}

.ed-fab__pill:hover:not(:disabled)[b-j1en3oomoa] {
    border-color: rgba(15, 23, 42, 0.32);
    color: #1e293b;
    background: rgba(255, 255, 255, 0.8);
}

.ed-fab__pill--active[b-j1en3oomoa] {
    background: #ea580c;
    border-color: #ea580c;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(234, 88, 12, 0.32);
}

.ed-fab__pill--active:hover[b-j1en3oomoa] {
    background: #c2410c;
    border-color: #c2410c;
}

.ed-fab__pill[data-category="male"][b-j1en3oomoa]   { --pill-color: #bae6fd; --pill-text-color: #075985; --pill-shadow: rgba(7, 89, 133, 0.2); }
.ed-fab__pill[data-category="female"][b-j1en3oomoa] { --pill-color: #fecdd3; --pill-text-color: #be123c; --pill-shadow: rgba(190, 18, 60, 0.2); }
.ed-fab__pill[data-category="mix"][b-j1en3oomoa]    { --pill-color: #ddd6fe; --pill-text-color: #5b21b6; --pill-shadow: rgba(91, 33, 182, 0.2); }

.ed-fab__pill[data-category]:not(.ed-fab__pill--active)[b-j1en3oomoa] {
    border-color: var(--pill-color);
    color: var(--pill-text-color);
}

.ed-fab__pill--active[data-category][b-j1en3oomoa] {
    background: var(--pill-color);
    border-color: var(--pill-color);
    color: var(--pill-text-color);
    box-shadow: 0 2px 8px var(--pill-shadow);
}

.ed-fab__pill-short[b-j1en3oomoa] { display: none; }

@media (max-width: 767.98px) {
    .ed-fab__pill[b-j1en3oomoa] { height: 44px; padding: 0 14px; font-size: 0.75rem; }
    .ed-fab__pill-full[b-j1en3oomoa]  { display: none; }
    .ed-fab__pill-short[b-j1en3oomoa] { display: inline; }
}

/* Separator */
.ed-fab__sep[b-j1en3oomoa] {
    width: 1px;
    height: 20px;
    background: rgba(15, 23, 42, 0.1);
    flex-shrink: 0;
}

/* Search */
.ed-fab__search[b-j1en3oomoa] {
    flex: 1;
    position: relative;
    min-width: 0;
    max-width: 200px;
}

.ed-fab__search-icon[b-j1en3oomoa] {
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    color: #94a3b8;
    pointer-events: none;
    flex-shrink: 0;
}

.ed-fab__search-input[b-j1en3oomoa] {
    width: 100%;
    height: 32px;
    background: rgba(255, 255, 255, 0.45);
    border: 1.5px solid rgba(15, 23, 42, 0.11);
    border-radius: 16px;
    color: #1e293b;
    font-size: 0.8125rem;
    font-family: inherit;
    padding: 0 32px 0 30px;
    outline: none;
    transition: border-color 0.15s, background 0.15s, box-shadow 0.15s;
}

.ed-fab__search-input[b-j1en3oomoa]::placeholder { color: #94a3b8; }

.ed-fab__search-clear[b-j1en3oomoa] {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: rgba(100, 116, 139, 0.18);
    border-radius: 50%;
    color: #64748b;
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    -webkit-tap-highlight-color: transparent;
    transition: background 0.12s, color 0.12s;
}

.ed-fab__search-clear:hover[b-j1en3oomoa] {
    background: rgba(100, 116, 139, 0.32);
    color: #1e293b;
}

.ed-fab__search-clear svg[b-j1en3oomoa] {
    width: 12px;
    height: 12px;
}

.ed-fab__search-input:focus[b-j1en3oomoa] {
    border-color: #ea580c;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.12);
}

@media (max-width: 767.98px) {
    .ed-fab__search[b-j1en3oomoa] { max-width: none; }
    .ed-fab__search-icon[b-j1en3oomoa] { width: 18px; height: 18px; }
    .ed-fab__search-input[b-j1en3oomoa] { height: 44px; font-size: 0.875rem; padding-left: 36px; padding-right: 40px; }
    .ed-fab__search-clear[b-j1en3oomoa] { width: 28px; height: 28px; right: 8px; }
    .ed-fab__search-clear svg[b-j1en3oomoa] { width: 14px; height: 14px; }
    .ed-fab:has(.ed-fab__search) .ed-fab__spacer[b-j1en3oomoa] { display: none; }
}

/* Action buttons */
.ed-fab__btn[b-j1en3oomoa] {
    height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 0.8125rem;
    font-weight: 700;
    cursor: pointer;
    border: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    white-space: nowrap;
    font-family: inherit;
    transition: background 0.12s, box-shadow 0.12s, transform 0.1s;
    -webkit-tap-highlight-color: transparent;
    flex-shrink: 0;
    letter-spacing: 0.02em;
}

.ed-fab__btn svg[b-j1en3oomoa] {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.ed-fab__btn:active:not(:disabled)[b-j1en3oomoa] { transform: scale(0.96); }
.ed-fab__btn:disabled[b-j1en3oomoa] { opacity: 0.42; cursor: not-allowed; }

.ed-fab__btn--primary[b-j1en3oomoa] {
    background: #ea580c;
    color: #ffffff;
    box-shadow: 0 2px 10px rgba(234, 88, 12, 0.38);
}

.ed-fab__btn--primary:hover:not(:disabled)[b-j1en3oomoa] {
    background: #c2410c;
    box-shadow: 0 4px 18px rgba(234, 88, 12, 0.44);
}

.ed-fab__btn--ghost[b-j1en3oomoa] {
    background: rgba(255, 255, 255, 0.4);
    border: 1.5px solid rgba(15, 23, 42, 0.14);
    color: #475569;
}

.ed-fab__btn--ghost:hover:not(:disabled)[b-j1en3oomoa] {
    background: rgba(255, 255, 255, 0.82);
    border-color: rgba(15, 23, 42, 0.3);
    color: #1e293b;
}

@media (max-width: 767.98px) {
    .ed-fab__btn[b-j1en3oomoa] { height: 44px; width: 44px; padding: 0; }
    .ed-fab__btn-label[b-j1en3oomoa] { display: none; }
}

/* Bottom tabs */
.ed-bottomnav[b-j1en3oomoa] {
    display: none;
}

@media (max-width: 767.98px) {
    /* Back button in hero (mobile only) */
    .event-hero-back[b-j1en3oomoa] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.15);
        color: rgba(255, 255, 255, 0.9);
        text-decoration: none;
        margin-bottom: 0.75rem;
        transition: background 0.15s;
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
    }

    .event-hero-back:hover[b-j1en3oomoa] {
        background: rgba(255, 255, 255, 0.25);
    }

    /* Bottom tab nav */
    .ed-bottomnav[b-j1en3oomoa] {
        display: flex;
        align-items: stretch;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 56px;
        background: #0f1724;
        z-index: 101;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
    }

    .ed-tab[b-j1en3oomoa] {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 2px;
        padding: 6px 4px;
        background: none;
        border: none;
        color: rgba(255, 255, 255, 0.45);
        font-size: 0.625rem;
        font-weight: 600;
        letter-spacing: 0.04em;
        cursor: pointer;
        transition: color 0.15s;
        font-family: inherit;
        -webkit-tap-highlight-color: transparent;
    }

    .ed-tab:active[b-j1en3oomoa] {
        background: rgba(255, 255, 255, 0.05);
    }

    .ed-tab--active[b-j1en3oomoa] {
        color: #ea580c;
    }

    .ed-tab-icon[b-j1en3oomoa] {
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }
}

/* ── Mobile heat card list ── */

.heat-list--mobile[b-j1en3oomoa] {
    display: none;
}

@media (max-width: 767.98px) {
    .heat-list--desktop[b-j1en3oomoa] {
        display: none !important;
    }

    .heat-list--mobile[b-j1en3oomoa] {
        display: block;
    }

    .heat-card[b-j1en3oomoa] {
        padding: 12px 14px;
        border-bottom: 1px solid var(--mud-palette-lines-default);
        cursor: pointer;
    }

    .heat-card:last-child[b-j1en3oomoa] {
        border-bottom: none;
    }

    .heat-card__top[b-j1en3oomoa] {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 8px;
        margin-bottom: 4px;
    }

    .heat-card__title[b-j1en3oomoa] {
        display: flex;
        align-items: baseline;
        gap: 6px;
        flex-wrap: wrap;
        min-width: 0;
    }

    .heat-card__num[b-j1en3oomoa] {
        font-weight: 600;
        color: var(--mud-palette-text-secondary);
        font-size: 0.8125rem;
        white-space: nowrap;
    }

    .heat-card__name[b-j1en3oomoa] {
        font-weight: 600;
        font-size: 0.9375rem;
        word-break: break-word;
    }

    .heat-card__meta[b-j1en3oomoa] {
        display: flex;
        gap: 10px;
        font-size: 0.8125rem;
        color: var(--mud-palette-text-secondary);
        margin-bottom: 6px;
    }

    .heat-card__lanes[b-j1en3oomoa] {
        display: flex;
        flex-wrap: wrap;
        gap: 4px;
        margin-bottom: 2px;
    }

    .heat-card__actions[b-j1en3oomoa] {
        display: flex;
        gap: 0;
        margin-top: 2px;
        margin-left: -8px;
    }

    .heat-card__expanded[b-j1en3oomoa] {
        margin-top: 10px;
        border-top: 1px solid var(--mud-palette-divider);
        padding-top: 8px;
        overflow-x: auto;
    }

    /* Row highlight classes on cards */
    .heat-card.heat-row--current[b-j1en3oomoa] {
        border-left: 3px solid #ea580c;
        background-color: rgba(234, 88, 12, 0.04);
        padding-left: 11px;
    }

    .heat-card.heat-row--next[b-j1en3oomoa] {
        border-left: 3px solid #0d9488;
        background-color: rgba(13, 148, 136, 0.04);
        padding-left: 11px;
    }

    /* Warning/danger row classes on cards */
    .heat-card.qualifier-table-row--warning[b-j1en3oomoa] {
        background-color: rgba(255, 152, 0, 0.06);
    }

    .heat-card.qualifier-table-row--danger[b-j1en3oomoa] {
        background-color: rgba(244, 67, 54, 0.07);
    }

    .heat-card.qualifier-table-row--schedule-tight-danger[b-j1en3oomoa] {
        border-left: 3px solid var(--mud-palette-error);
        padding-left: 11px;
    }

    .heat-card.qualifier-table-row--schedule-tight-warning[b-j1en3oomoa] {
        border-left: 3px solid var(--mud-palette-warning);
        padding-left: 11px;
    }
}

/* ── Admin diagonal heat card (Schema / Resultat tabs) ── */

.ah-card-grid[b-j1en3oomoa] {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.ah-card[b-j1en3oomoa] {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    background: #ffffff;
    display: flex;
    flex-direction: column;
}

/* Colored left strip */
.ah-card__strip[b-j1en3oomoa] {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    z-index: 10;
}
.ah-card__strip--herr[b-j1en3oomoa] { background: #bae6fd; }
.ah-card__strip--dam[b-j1en3oomoa]  { background: #fecdd3; }
.ah-card__strip--mix[b-j1en3oomoa]  { background: #ddd6fe; }

/* Diagonal header */
.ah-card__header[b-j1en3oomoa] {
    position: relative;
    display: flex;
    height: 50px;
    overflow: hidden;
    border-radius: 12px 12px 0 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.1);
    background: #1e293b;
}

/* Diagonal segments */
.ah-card__seg[b-j1en3oomoa] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transform: skewX(-12deg);
    transform-origin: top left;
}

.ah-card__seg--time[b-j1en3oomoa] {
    background: #ffffff;
    width: 80px;
}

.ah-card__seg--info[b-j1en3oomoa] {
    flex: 1;
    background: #ffffff;
    padding-left: 14px;
    padding-right: 6px;
    min-width: 0;
    overflow: hidden;
}

.ah-card__seg--cat[b-j1en3oomoa] {
    margin-left: -1px;
    width: 60px;
}
.ah-card__cat--herr[b-j1en3oomoa] { background: #bae6fd; }
.ah-card__cat--dam[b-j1en3oomoa]  { background: #fecdd3; }
.ah-card__cat--mix[b-j1en3oomoa]  { background: #ddd6fe; }

.ah-card__seg--name[b-j1en3oomoa] {
    flex: 1;
    background: #1e293b;
    margin-left: -1px;
    padding-left: 18px;
    padding-right: 10px;
    justify-content: flex-start;
    overflow: hidden;
}

/* Counter-skew keeps text upright */
.ah-card__unskew[b-j1en3oomoa] {
    transform: skewX(12deg);
    transform-origin: top left;
    display: block;
}

.ah-card__unskew--time[b-j1en3oomoa] {
    font-family: 'Roboto Mono', monospace;
    font-size: 1.1rem;
    font-weight: 900;
    line-height: 1;
    color: #0f172a;
}

.ah-card__unskew--cat[b-j1en3oomoa] {
    font-size: 0.6rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #1e293b;
}

.ah-card__unskew--name[b-j1en3oomoa] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #cbd5e1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.ah-card__unskew--info[b-j1en3oomoa] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1px;
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

.ah-card__info-team[b-j1en3oomoa] {
    font-size: 0.8rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #0f172a;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ah-card__info-org[b-j1en3oomoa] {
    font-size: 0.73rem;
    font-weight: 400;
    color: #94a3b8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Card lane list */
.ah-card__body[b-j1en3oomoa] {
    flex: 1;
    padding: 6px 12px 6px 12px;
    background: #ffffff;
}

.ah-lane-empty[b-j1en3oomoa] {
    font-size: 0.8rem;
    color: #94a3b8;
    margin: 2px 0 4px;
    padding: 0;
}

.ah-lane-row[b-j1en3oomoa] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 3px 8px 3px 8px;
    border-radius: 10px;
    margin-left: -4px;
    margin-right: -4px;
}

.ah-lane-row--winner[b-j1en3oomoa] {
    border-left: 2px solid #fbbf24;
    background-color: #fffbeb;
    padding-left: 6px;
}

/* ── Swap / delete animations ── */

@keyframes ah-flash-card-b-j1en3oomoa {
    0%, 100% { box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07); }
    35%      { box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.5); }
}

.ah-card--flash[b-j1en3oomoa] {
    animation: ah-flash-card-b-j1en3oomoa 0.7s ease-out;
}

@keyframes ah-flash-lane-b-j1en3oomoa {
    0%, 100% { background-color: transparent; }
    35%      { background-color: rgba(234, 88, 12, 0.13); }
}

.ah-lane-row--flash[b-j1en3oomoa] {
    animation: ah-flash-lane-b-j1en3oomoa 0.7s ease-out;
}

@keyframes ah-card-leave-b-j1en3oomoa {
    0%   { opacity: 1; transform: scale(1);    }
    100% { opacity: 0; transform: scale(0.93); }
}

.ah-card--leaving[b-j1en3oomoa] {
    animation: ah-card-leave-b-j1en3oomoa 0.28s ease-in forwards;
    pointer-events: none;
}

.ah-lane-badge[b-j1en3oomoa] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    font-size: 9px;
    font-weight: 900;
    line-height: 1;
    margin-top: 1px;
}

.ah-lane-badge--empty[b-j1en3oomoa]   { border: 1px solid #e2e8f0; }
.ah-lane-badge--gold[b-j1en3oomoa]    { background: #fbbf24; color: #ffffff; }
.ah-lane-badge--silver[b-j1en3oomoa]  { background: #cbd5e1; color: #475569; }
.ah-lane-badge--bronze[b-j1en3oomoa]  { background: rgba(180, 83, 9, 0.7); color: #ffffff; }
.ah-lane-badge--default[b-j1en3oomoa] { background: #f1f5f9; color: #64748b; }

.ah-lane-info[b-j1en3oomoa] { flex: 1; min-width: 0; }

.ah-lane-name[b-j1en3oomoa] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #1e293b;
}

.ah-lane-name--winner[b-j1en3oomoa]      { font-weight: 700; color: #0f172a; }
.ah-lane-name--placeholder[b-j1en3oomoa] { font-style: italic; color: #94a3b8; font-weight: 400; }

.ah-lane-org[b-j1en3oomoa] {
    display: block;
    font-size: 0.6875rem;
    color: #94a3b8;
}

.ah-lane-time[b-j1en3oomoa] {
    flex-shrink: 0;
    font-family: 'Roboto Mono', monospace;
    font-size: 0.75rem;
    font-weight: 700;
    color: #64748b;
    margin-top: 1px;
}

.ah-lane-time--winner[b-j1en3oomoa] { color: #d97706; }
.ah-lane-time--muted[b-j1en3oomoa]  { color: #cbd5e1; }

.ah-lane-status[b-j1en3oomoa] {
    flex-shrink: 0;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 2px 5px;
    border-radius: 4px;
    background: #f1f5f9;
    color: #94a3b8;
    margin-top: 1px;
}

.ah-note-indicator[b-j1en3oomoa] {
    display: block;
    margin-top: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: #64748b;
    padding: 2px 6px;
    border-radius: 4px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    width: fit-content;
}

/* Action strip */
.ah-card__action-strip[b-j1en3oomoa] {
    display: flex;
    align-items: stretch;
    background: #f8fafc;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.ah-action-btn[b-j1en3oomoa] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    background: none;
    border: none;
    border-right: 1px solid rgba(15, 23, 42, 0.07);
    color: #475569;
    cursor: pointer;
    padding: 0;
    transition: background 0.12s, color 0.12s;
    -webkit-tap-highlight-color: transparent;
    font-family: inherit;
}

.ah-action-btn:last-child[b-j1en3oomoa] {
    border-right: none;
}

.ah-action-btn svg[b-j1en3oomoa] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.ah-action-btn:hover:not(:disabled)[b-j1en3oomoa] {
    background: rgba(15, 23, 42, 0.04);
    color: #475569;
}

.ah-action-btn:active:not(:disabled)[b-j1en3oomoa] {
    background: rgba(15, 23, 42, 0.08);
}

.ah-action-btn:disabled[b-j1en3oomoa] {
    opacity: 0.35;
    cursor: not-allowed;
}

.ah-action-btn--active[b-j1en3oomoa] {
    color: #ea580c;
}

.ah-action-btn--active:hover:not(:disabled)[b-j1en3oomoa] {
    background: rgba(234, 88, 12, 0.06);
    color: #c2410c;
}

.ah-action-btn--primary[b-j1en3oomoa] {
    color: #0d9488;
}

.ah-action-btn--primary:hover:not(:disabled)[b-j1en3oomoa] {
    background: rgba(13, 148, 136, 0.06);
    color: #0f766e;
}

.ah-card__action-strip--stepper .ah-action-btn[b-j1en3oomoa] {
    font-size: 0.8125rem;
    font-weight: 600;
    gap: 4px;
}

.ah-action-btn--danger:hover:not(:disabled)[b-j1en3oomoa] {
    background: rgba(220, 38, 38, 0.06);
    color: #dc2626;
}

/* Current / next heat indicators on Schema/Resultat cards */
.ah-card--current[b-j1en3oomoa] {
    border-color: #ea580c;
    box-shadow: 0 0 0 2px rgba(234, 88, 12, 0.2);
}


/* ── Swap mode ── */

/* Lane row swap states */
.ah-lane-row[b-j1en3oomoa] {
    transition: background-color 0.12s, opacity 0.12s, box-shadow 0.15s ease, transform 0.15s ease;
}

.ah-lane-row--swap-source[b-j1en3oomoa] {
    background: #ffffff;
    transform: scale(1.09);
    box-shadow: 0 24px 56px rgba(234, 88, 12, 0.32), 0 8px 20px rgba(15, 23, 42, 0.22);
    z-index: 2;
    position: relative;
    cursor: pointer;
}

.ah-card:has(.ah-lane-row--swap-source)[b-j1en3oomoa] {
    overflow: visible;
}

.ah-card:has(.ah-lane-row--swap-source) .ah-card__strip[b-j1en3oomoa] {
    z-index: 1;
    top: 4px;
    bottom: 3px;
    border-radius: 11px 0 0 11px;
}

@keyframes row-target-pulse-b-j1en3oomoa {
    0%, 100% { outline-color: rgba(15, 23, 42, 0.2); }
    50%       { outline-color: rgba(15, 23, 42, 0.7); }
}

.ah-lane-row--swap-target[b-j1en3oomoa] {
    outline: 2px dashed rgba(15, 23, 42, 0.55);
    outline-offset: -2px;
    margin: 3px 0;
    cursor: pointer;
    animation: row-target-pulse-b-j1en3oomoa 1.2s ease-in-out infinite;
}

.ah-lane-row--swap-target:hover[b-j1en3oomoa] {
    background-color: rgba(13, 148, 136, 0.14);
}

.ah-lane-row--swap-muted[b-j1en3oomoa] {
    opacity: 0.3;
    pointer-events: none;
}

.ah-card--team-swap-muted[b-j1en3oomoa] {
    opacity: 0.35;
    pointer-events: none;
    transition: opacity 0.15s ease;
}


/* Empty qualifier slot placeholder */
.ah-lane-row--empty[b-j1en3oomoa] {
    outline: 1.5px dashed #cbd5e1;
    outline-offset: -2px;
    opacity: 0.5;
    margin: 3px 0;
    min-height: 2.625rem;
    align-items: center;
}

.ah-lane-row--empty.ah-lane-row--swap-target[b-j1en3oomoa] {
    opacity: 1;
    outline: 2px dashed rgba(15, 23, 42, 0.55);
    outline-offset: -2px;
}

/* Show pointer on selectable lanes when not in swap mode */
.ah-card-grid:not(.ah-card-grid--swap-mode) .ah-lane-row:not(.ah-lane-row--swap-muted):not(.ah-lane-row--empty)[b-j1en3oomoa] {
    cursor: pointer;
}

/* ── Heat start-time swap ── */

.ah-card__header--swappable[b-j1en3oomoa] {
    cursor: pointer;
}

.ah-card__header--swappable:hover[b-j1en3oomoa] {
    filter: brightness(1.12);
}

.ah-card--heat-swap-source[b-j1en3oomoa] {
    transform: scale(1.09);
    box-shadow: 0 24px 56px rgba(234, 88, 12, 0.32), 0 8px 20px rgba(15, 23, 42, 0.22);
    z-index: 2;
    position: relative;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

@keyframes card-target-pulse-b-j1en3oomoa {
    0%, 100% { border-color: rgba(15, 23, 42, 0.2); }
    50%       { border-color: rgba(15, 23, 42, 0.7); }
}

.ah-card--heat-swap-target[b-j1en3oomoa] {
    border: 2px dashed rgba(15, 23, 42, 0.55);
    cursor: pointer;
    animation: card-target-pulse-b-j1en3oomoa 1.2s ease-in-out infinite;
}

.ah-card--heat-swap-target:hover[b-j1en3oomoa]::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(13, 148, 136, 0.14);
    border-radius: inherit;
    pointer-events: none;
    z-index: 5;
}

.ah-card--heat-swap-muted[b-j1en3oomoa] {
    opacity: 0.35;
    pointer-events: none;
}

/* In heat-swap mode, suppress lane and action-strip click interactions */
.ah-card-grid--heat-swap-mode .ah-lane-row[b-j1en3oomoa],
.ah-card-grid--heat-swap-mode .ah-card__action-strip[b-j1en3oomoa] {
    cursor: default !important;
    pointer-events: none;
}

/* ── Participant (team) cards ── */

.pc-card[b-j1en3oomoa] {
    cursor: default;
}

.pc-heat-row[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.3rem 0.75rem;
    font-size: 0.8125rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.pc-heat-row:last-child[b-j1en3oomoa] {
    border-bottom: none;
}

.pc-heat-name[b-j1en3oomoa] {
    flex: 1 1 auto;
    font-weight: 500;
    color: var(--mud-palette-text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pc-heat-times[b-j1en3oomoa] {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
}

.pc-heat-time[b-j1en3oomoa] {
    color: var(--mud-palette-text-secondary);
    font-size: 0.75rem;
    white-space: nowrap;
}

.pc-heat-finish[b-j1en3oomoa] {
    font-family: 'Roboto Mono', monospace;
    font-size: 0.7rem;
    color: var(--mud-palette-text-secondary);
    white-space: nowrap;
}

.pc-heat-finish--status[b-j1en3oomoa] {
    font-family: inherit;
    font-weight: 600;
}

/* ── Heat start-time stepper ── */

/* ── Stepper mode: elevate active card, mute others ── */

.ah-card--stepper-source[b-j1en3oomoa] {
    transform: scale(1.09);
    box-shadow: 0 24px 56px rgba(15, 23, 42, 0.28), 0 8px 20px rgba(15, 23, 42, 0.18);
    z-index: 51;
    position: relative;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.ah-card-grid--stepper-mode .ah-card:not(.ah-card--stepper-source)[b-j1en3oomoa] {
    opacity: 0.3;
    pointer-events: none;
    transition: opacity 0.15s ease;
}

/* ── Time segment click hint ── */

.ah-card__seg--time-clickable[b-j1en3oomoa] {
    cursor: pointer;
    transition: filter 0.1s;
}

.ah-card__seg--time-clickable:hover[b-j1en3oomoa] {
    filter: brightness(0.93);
}

/* ── Stepper backdrop (dismisses on click-outside) ── */

.ah-stepper-backdrop[b-j1en3oomoa] {
    position: fixed;
    inset: 0;
    z-index: 50;
}

/* ── Active stepper header (replaces diagonal segments) ── */

.ah-card__header--stepper-active[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    background: #1e293b;
}

.ah-time-step-btn[b-j1en3oomoa] {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border: none;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: background 0.1s;
    font-family: inherit;
}

.ah-time-step-btn:hover:not(:disabled)[b-j1en3oomoa] {
    background: rgba(255, 255, 255, 0.25);
}

.ah-time-step-btn:disabled[b-j1en3oomoa] {
    opacity: 0.25;
    cursor: default;
}

.ah-time-val[b-j1en3oomoa] {
    font-family: 'Roboto Mono', monospace;
    font-size: 1.3rem;
    font-weight: 900;
    color: #ffffff;
    line-height: 1;
    min-width: 60px;
    text-align: center;
}

.ah-time-val--saving[b-j1en3oomoa] {
    opacity: 0.5;
}

/* ── In-progress heat card ── */

@keyframes ah-pulse-amber-b-j1en3oomoa {
    0%, 100% { border-color: #f59e0b; box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.0); }
    50%       { border-color: #d97706; box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.22); }
}

.ah-card--in-progress[b-j1en3oomoa] {
    border: 2px solid #f59e0b;
    animation: ah-pulse-amber-b-j1en3oomoa 2s ease-in-out infinite;
}

.ah-card__alert-bar[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.75rem;
    background: rgba(245, 158, 11, 0.1);
    border-top: 1px solid rgba(245, 158, 11, 0.28);
    cursor: pointer;
    transition: background 0.12s;
}

.ah-card__alert-bar:hover[b-j1en3oomoa] {
    background: rgba(245, 158, 11, 0.18);
}

.ah-card__alert-icon[b-j1en3oomoa] {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
    fill: #d97706;
}

.ah-card__alert-text[b-j1en3oomoa] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #92400e;
}

/* ── Event info cards (Evenemang tab) ── */

.ec-card-grid[b-j1en3oomoa] {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.ec-card[b-j1en3oomoa] {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07);
    background: #ffffff;
    display: flex;
    flex-direction: column;
}

.ec-card__strip[b-j1en3oomoa] {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    background: #ea580c;
    z-index: 10;
}

.ec-card__header[b-j1en3oomoa] {
    position: relative;
    display: flex;
    align-items: stretch;
    height: 46px;
    background: #ffffff;
    border-radius: 12px 12px 0 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.1);
    overflow: hidden;
    flex-shrink: 0;
}

.ec-card__title[b-j1en3oomoa] {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 0 62px 0 18px;
    font-size: 0.8125rem;
    font-weight: 700;
    color: #1e293b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ec-card__edit-seg[b-j1en3oomoa] {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 58px;
    display: flex;
    align-items: stretch;
    background: #ea580c;
    clip-path: polygon(14px 0%, 100% 0%, 100% 100%, 0% 100%);
}

.ec-card__edit-btn[b-j1en3oomoa] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    cursor: pointer;
    color: #ffffff;
    padding: 0 0 0 10px;
    font-family: inherit;
    transition: background 0.12s;
    -webkit-tap-highlight-color: transparent;
}

.ec-card__edit-btn svg[b-j1en3oomoa] {
    width: 15px;
    height: 15px;
}

.ec-card__edit-btn:hover:not(:disabled)[b-j1en3oomoa] {
    background: rgba(0, 0, 0, 0.12);
}

.ec-card__edit-btn:active:not(:disabled)[b-j1en3oomoa] {
    background: rgba(0, 0, 0, 0.22);
}

.ec-card__edit-btn:disabled[b-j1en3oomoa] {
    opacity: 0.45;
    cursor: not-allowed;
}

.ec-card__body[b-j1en3oomoa] {
    position: relative;
    flex: 1;
    padding: 12px 14px 10px 18px;
    max-height: 180px;
    overflow: hidden;
}

.ec-card__body[b-j1en3oomoa]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 36px;
    background: linear-gradient(to bottom, transparent, #ffffff);
    pointer-events: none;
}

/* Field rows */
.ec-field[b-j1en3oomoa] {
    padding: 5px 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.ec-field:last-child[b-j1en3oomoa] {
    border-bottom: none;
}

.ec-field__label[b-j1en3oomoa] {
    font-size: 0.625rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #94a3b8;
    line-height: 1;
    margin-bottom: 2px;
}

.ec-field__value[b-j1en3oomoa] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #1e293b;
    line-height: 1.3;
}

/* Status dot */
.ec-status[b-j1en3oomoa] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.ec-status__dot[b-j1en3oomoa] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.ec-status__dot--active[b-j1en3oomoa]    { background: #22c55e; }
.ec-status__dot--completed[b-j1en3oomoa] { background: #94a3b8; }

/* Category chips */
.ec-cats[b-j1en3oomoa] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 2px;
}

.ec-cat-chip[b-j1en3oomoa] {
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 2px 7px;
    border-radius: 999px;
    color: #1e293b;
    line-height: 1.4;
}

.ec-cat-chip--herr[b-j1en3oomoa] { background: #bae6fd; }
.ec-cat-chip--dam[b-j1en3oomoa]  { background: #fecdd3; }
.ec-cat-chip--mix[b-j1en3oomoa]  { background: #ddd6fe; }

/* Time range (Schemainställningar) */
.ec-time-range[b-j1en3oomoa] {
    font-family: 'Roboto Mono', monospace;
    font-size: 1rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: 0.01em;
    line-height: 1;
    margin-bottom: 1px;
}

/* Social media rows */
.ec-social-row[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.ec-social-row:last-child[b-j1en3oomoa] {
    border-bottom: none;
}

.ec-social-icon[b-j1en3oomoa] {
    width: 24px;
    height: 24px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #fff;
}

.ec-social-icon--fb[b-j1en3oomoa]   { background: #1877f2; }
.ec-social-icon--ig[b-j1en3oomoa]   { background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.ec-social-icon--tt[b-j1en3oomoa]   { background: #010101; }
.ec-social-icon--mail[b-j1en3oomoa] { background: #0ea5e9; }
.ec-social-icon--web[b-j1en3oomoa]  { background: #10b981; }

.ec-social-icon svg[b-j1en3oomoa] {
    width: 13px;
    height: 13px;
}

.ec-social-handle[b-j1en3oomoa] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #1e293b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Övrigt mobile bottom sheet ── */

.ed-ovrigt-backdrop[b-j1en3oomoa] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 200;
}

.ed-ovrigt-sheet[b-j1en3oomoa] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 56px;
    background: #1a2537;
    z-index: 201;
    border-radius: 16px 16px 0 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    overflow: hidden;
}

.ed-ovrigt-action[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    width: 100%;
    background: none;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.9375rem;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    text-align: left;
    -webkit-tap-highlight-color: transparent;
}

.ed-ovrigt-action:last-child[b-j1en3oomoa] {
    border-bottom: none;
}

.ed-ovrigt-action:active[b-j1en3oomoa] {
    background: rgba(255, 255, 255, 0.06);
}

.ed-ovrigt-action--danger[b-j1en3oomoa] {
    color: #f87171;
}

.ed-ovrigt-action svg[b-j1en3oomoa] {
    width: 1.375rem;
    height: 1.375rem;
    flex-shrink: 0;
    opacity: 0.75;
}

/* ── Metro grid: image left (spanning), three cards right ── */

.ec-metro-grid[b-j1en3oomoa] {
    display: grid;
    grid-template-columns: 3fr 1fr 1fr;
    grid-template-rows: 280px auto;
    gap: 12px;
    margin-top: 12px;
}

/* Image: full left column, spans both rows (60% wide) */
.ec-metro--img[b-j1en3oomoa] { grid-column: 1; grid-row: 1 / span 2; }

/* Content: right two columns combined, row 1 (40% wide) */
.ec-metro--c[b-j1en3oomoa]   { grid-column: 2 / span 2; grid-row: 1; }

/* Grundinformation + Arrangör: each 20%, side-by-side in row 2 */
.ec-metro--a[b-j1en3oomoa]   { grid-column: 2; grid-row: 2; }
.ec-metro--d[b-j1en3oomoa]   { grid-column: 3; grid-row: 2; }

@media (max-width: 767.98px) {
    .ec-metro-grid[b-j1en3oomoa] { grid-template-columns: 1fr; }
    .ec-metro--img[b-j1en3oomoa], .ec-metro--a[b-j1en3oomoa], .ec-metro--d[b-j1en3oomoa], .ec-metro--c[b-j1en3oomoa] {
        grid-column: 1 !important;
        grid-row: auto !important;
    }
    .ec-metro--img[b-j1en3oomoa] { min-height: 220px; }
}

/* ── Image card (top-left, fixed height) ── */

.ec-metro--img[b-j1en3oomoa] {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 260px;
}

.ec-img-fill[b-j1en3oomoa] {
    flex: 1;
    min-height: 0;
    width: 100%;
    object-fit: cover;
    display: block;
}

.ec-img-placeholder[b-j1en3oomoa] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background:
        repeating-linear-gradient(
            45deg,
            rgba(15,23,42,0.03) 0,
            rgba(15,23,42,0.03) 1px,
            transparent 0,
            transparent 50%
        ),
        #f8fafc;
    background-size: 16px 16px, 100% 100%;
    color: #94a3b8;
    font-size: 0.75rem;
    font-weight: 500;
    cursor: default;
}

.ec-img-placeholder svg[b-j1en3oomoa] {
    width: 32px;
    height: 32px;
    opacity: 0.35;
}

.ec-img-caption[b-j1en3oomoa] {
    flex-shrink: 0;
    padding: 9px 14px 10px;
    border-top: 1px solid rgba(15, 23, 42, 0.09);
    background: #ffffff;
}

.ec-img-caption__text[b-j1en3oomoa] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #1e293b;
    line-height: 1.4;
    display: block;
    font-style: italic;
}

.ec-img-caption__text--empty[b-j1en3oomoa] {
    color: #94a3b8;
    font-style: normal;
}

/* ── Hover-pencil edit button ── */

.ec-card__hover-edit[b-j1en3oomoa] {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(15, 23, 42, 0.14);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.14s, background 0.14s, border-color 0.14s, box-shadow 0.14s;
    cursor: pointer;
    z-index: 20;
    box-shadow: 0 1px 4px rgba(0,0,0,0.13);
    backdrop-filter: blur(4px);
    color: #ea580c;
    font-family: inherit;
}

.ec-card:hover .ec-card__hover-edit:not(:disabled)[b-j1en3oomoa] {
    opacity: 1;
}

.ec-card__hover-edit:hover:not(:disabled)[b-j1en3oomoa] {
    background: #ea580c;
    border-color: #ea580c;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(234, 88, 12, 0.3);
}

.ec-card__hover-edit:active:not(:disabled)[b-j1en3oomoa] {
    background: #c2410c;
    border-color: #c2410c;
}

.ec-card__hover-edit:disabled[b-j1en3oomoa] {
    display: none;
}

.ec-card__hover-edit svg[b-j1en3oomoa] {
    width: 14px;
    height: 14px;
}

/* Section title inside card body (replaces old orange header bar) */
.ec-card__section-title[b-j1en3oomoa] {
    font-size: 0.625rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #ea580c;
    margin-bottom: 10px;
}

/* Content card: fills fixed row height, fade at true bottom */
.ec-metro--c .ec-card__body[b-j1en3oomoa] {
    flex: 1;
    max-height: none;
    padding-top: 14px;
    overflow: hidden;
    position: relative;
}

.ec-metro--c .ec-card__body[b-j1en3oomoa]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    background: linear-gradient(to bottom, transparent, #ffffff);
    pointer-events: none;
}

/* Bottom cards: auto-height, show all content, no fade */
.ec-metro--a .ec-card__body[b-j1en3oomoa],
.ec-metro--d .ec-card__body[b-j1en3oomoa] {
    max-height: none;
    padding-top: 14px;
}

/* Organizer card */
.ec-organizer-contacts[b-j1en3oomoa] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ec-organizer-row[b-j1en3oomoa] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.ec-organizer-icon[b-j1en3oomoa] {
    width: 24px;
    height: 24px;
    font-size: 24px;
    color: #94a3b8;
    flex-shrink: 0;
}

.ec-organizer-value[b-j1en3oomoa] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #1e293b;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ec-organizer-social[b-j1en3oomoa] {
    margin-top: 4px;
}

/* Section label inside card body */
.ec-section-label[b-j1en3oomoa] {
    font-size: 0.5625rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 4px;
}
/* /Heats/Dialogs/EditHeatDialog.razor.rz.scp.css */
/* Team column uses most of the row; allow flex children to respect ellipsis without forcing overflow */
.edit-heat-lane-row .edit-heat-lane-team[b-mgad20ml3n] {
    min-width: 0;
}

.edit-heat-lane-row .edit-heat-lane-narrow[b-mgad20ml3n] {
    max-width: 5.5rem;
}

/* Keep måltid / målstatus controls compact so the lag field can stay wide (md+). */
.edit-heat-lane-row .edit-heat-finish-duration[b-mgad20ml3n]  .mud-input-root {
    max-width: 9rem;
}

.edit-heat-lane-row .edit-heat-finish-status[b-mgad20ml3n]  .mud-input-root {
    max-width: 13rem;
}
/* /Heats/Dialogs/SetHeatResultsDialog.razor.rz.scp.css */
/* ─ Card-style header ─ */
.shr-card-header[b-fed1vxlowe] {
    position: relative;
    display: flex;
    height: 50px;
    overflow: hidden;
    background: #1e293b;
}

.shr-seg[b-fed1vxlowe] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transform: skewX(-12deg);
    transform-origin: top left;
}

.shr-seg--time[b-fed1vxlowe] {
    background: #ffffff;
    width: 80px;
}

.shr-seg--cat[b-fed1vxlowe] {
    margin-left: -1px;
    width: 60px;
}
.shr-cat--herr[b-fed1vxlowe] { background: #bae6fd; }
.shr-cat--dam[b-fed1vxlowe]  { background: #fecdd3; }
.shr-cat--mix[b-fed1vxlowe]  { background: #ddd6fe; }

.shr-seg--name[b-fed1vxlowe] {
    flex: 1;
    background: #1e293b;
    margin-left: -1px;
    padding-left: 18px;
    padding-right: 10px;
    justify-content: flex-start;
    overflow: hidden;
}

.shr-unskew[b-fed1vxlowe] {
    transform: skewX(12deg);
    transform-origin: top left;
    display: block;
}

.shr-unskew--time[b-fed1vxlowe] {
    font-family: 'Roboto Mono', monospace;
    font-size: 1.1rem;
    font-weight: 900;
    line-height: 1;
    color: #0f172a;
}

.shr-unskew--cat[b-fed1vxlowe] {
    font-size: 0.6rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #1e293b;
}

.shr-unskew--name[b-fed1vxlowe] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #cbd5e1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

/* ─ Lane rows ─ */
.shr-lanes[b-fed1vxlowe] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.shr-lane[b-fed1vxlowe] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

.shr-lane[b-fed1vxlowe]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: #ea580c;
    opacity: 0.25;
}

.shr-lane--active[b-fed1vxlowe]::before {
    opacity: 1;
}

.shr-lane--no-team[b-fed1vxlowe] {
    opacity: 0.5;
}

.shr-badge[b-fed1vxlowe] {
    min-width: 30px;
    height: 30px;
    border-radius: 7px;
    background: rgba(234, 88, 12, 0.1);
    color: #ea580c;
    font-size: 0.8125rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.shr-info[b-fed1vxlowe] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    overflow: hidden;
}

.shr-name[b-fed1vxlowe] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #1e293b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.shr-org[b-fed1vxlowe] {
    font-size: 0.6875rem;
    color: #64748b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.shr-status[b-fed1vxlowe] {
    width: 130px;
    flex-shrink: 0;
}

.shr-time[b-fed1vxlowe] {
    width: 115px;
    flex-shrink: 0;
}

@media (max-width: 767.98px) {
    .shr-lane[b-fed1vxlowe] {
        flex-wrap: wrap;
    }

    .shr-info[b-fed1vxlowe] {
        flex: 1 1 calc(100% - 42px);
    }

    .shr-status[b-fed1vxlowe] {
        flex: 3;
        width: auto;
        min-width: 0;
    }

    .shr-time[b-fed1vxlowe] {
        flex: 2;
        width: auto;
        min-width: 80px;
    }
}
