/* /Components/Home/CtaSection.razor.rz.scp.css */
.ls-cta[b-qtk929kt2y] {
    padding-bottom: 4rem;
}

.ls-cta-panel[b-qtk929kt2y] {
    position: relative;
    overflow: hidden;
    padding: 4.5rem 2rem;
    text-align: center;
}

@media (min-width: 640px) {
    .ls-cta-panel[b-qtk929kt2y] {
        padding: 5.5rem 3.5rem;
    }
}

.ls-cta-halo[b-qtk929kt2y] {
    position: absolute;
    inset: -6rem 0 auto 0;
    height: 12rem;
    background: radial-gradient(50% 100% at 50% 0%, rgba(56, 189, 248, 0.22), transparent 70%);
    pointer-events: none;
}

.ls-cta-title[b-qtk929kt2y] {
    position: relative;
    margin: 1.25rem auto 0;
    max-width: 44rem;
    font-size: clamp(1.9rem, 3.6vw, 2.7rem);
    line-height: 1.12;
}

.ls-cta-body[b-qtk929kt2y] {
    position: relative;
    margin: 1.25rem auto 0;
    max-width: 34rem;
    font-size: 1rem;
    line-height: 1.7;
    color: var(--ls-ink-soft);
}

.ls-cta-actions[b-qtk929kt2y] {
    position: relative;
    margin-top: 2.25rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    justify-content: center;
}

.ls-cta-note[b-qtk929kt2y] {
    position: relative;
    margin: 1.75rem auto 0;
    max-width: 28rem;
    font-size: 0.75rem;
    color: var(--ls-ink-faint);
}
/* /Components/Home/FeatureCard.razor.rz.scp.css */
.feature-card[b-9c1sxszdb9] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 12px;
    padding: 1.75rem;
    transition: transform 0.22s, box-shadow 0.22s, border-color 0.22s;
    height: 100%;
}

.feature-card:hover[b-9c1sxszdb9] {
    transform: translateY(-4px);
    box-shadow: 0 0 24px rgba(14, 165, 233, 0.18);
    border-color: var(--accent);
}

.feature-card-icon[b-9c1sxszdb9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    border-radius: 10px;
    color: var(--accent);
    font-size: 1.4rem;
    margin-bottom: 1rem;
}

.feature-card-title[b-9c1sxszdb9] {
    color: var(--text-primary);
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.feature-card-desc[b-9c1sxszdb9] {
    color: var(--text-secondary);
    margin-bottom: 0;
}
/* /Components/Home/FrameworksSection.razor.rz.scp.css */
.ls-fw-head[b-bvpb5peue8] {
    max-width: 42rem;
}

.ls-fw-grid[b-bvpb5peue8] {
    margin-top: 3.5rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

@media (max-width: 900px) {
    .ls-fw-grid[b-bvpb5peue8] {
        grid-template-columns: 1fr;
    }
}

.ls-fw-card[b-bvpb5peue8] {
    padding: 2rem;
}

.ls-fw-card-label[b-bvpb5peue8] {
    font-family: var(--ls-font-mono);
    font-size: 0.6rem;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--ls-ink-muted);
}

.ls-fw-card-sub[b-bvpb5peue8] {
    margin: 0.75rem 0 0;
    font-size: 0.88rem;
    color: var(--ls-ink-soft);
}

.ls-fw-journey[b-bvpb5peue8] {
    position: relative;
    list-style: none;
    margin: 1.75rem 0 0;
    padding: 0;
}

.ls-fw-journey[b-bvpb5peue8]::before {
    content: '';
    position: absolute;
    left: 7px;
    top: 0.5rem;
    bottom: 0.5rem;
    width: 1px;
    background: linear-gradient(to bottom, rgba(56, 189, 248, 0.6), rgba(99, 102, 241, 0.3));
}

.ls-fw-journey li[b-bvpb5peue8] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.6rem 0 0.6rem 1.5rem;
    font-size: 0.95rem;
    color: var(--ls-ink);
}

.ls-fw-journey-node[b-bvpb5peue8] {
    position: absolute;
    left: 0;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    border: 1px solid rgba(56, 189, 248, 0.5);
    background: var(--ls-abyss);
}

.ls-fw-journey-node[b-bvpb5peue8]::after {
    content: '';
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    background: rgba(56, 189, 248, 0.7);
}

.ls-fw-chips[b-bvpb5peue8] {
    list-style: none;
    margin: 1.75rem 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.ls-fw-chips li[b-bvpb5peue8] {
    border: 1px solid var(--ls-hairline-bright);
    background: rgba(255, 255, 255, 0.03);
    border-radius: 999px;
    padding: 0.5rem 1rem;
    font-size: 0.85rem;
    color: var(--ls-ink-soft);
}

.ls-fw-note[b-bvpb5peue8] {
    margin-top: 2rem;
    padding: 1.25rem;
    border-radius: 16px;
    border: 1px solid var(--ls-hairline);
    background: rgba(6, 8, 20, 0.4);
    font-size: 0.85rem;
    line-height: 1.6;
    color: var(--ls-ink-muted);
}

/* /Components/Home/HeroSection.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════
   HeroSection — cinematic, agentic
   ══════════════════════════════════════════════════════════ */

.ls-hero[b-koow6josvm] {
    position: relative;
    z-index: 1;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.ls-hero-mesh[b-koow6josvm] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    -webkit-mask-image: radial-gradient(120% 80% at 50% 20%, #000 35%, transparent 80%);
            mask-image: radial-gradient(120% 80% at 50% 20%, #000 35%, transparent 80%);
}

.ls-hero-fade[b-koow6josvm] {
    position: absolute;
    inset: auto 0 0 0;
    height: 12rem;
    background: linear-gradient(to bottom, transparent, var(--ls-abyss));
    pointer-events: none;
}

.ls-hero-inner[b-koow6josvm] {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 8rem 1.5rem 6rem;
    display: grid;
    grid-template-columns: 1.02fr 0.98fr;
    align-items: center;
    gap: 2.5rem;
}

.ls-hero-copy[b-koow6josvm] { min-width: 0; }

/* ── Badge ────────────────────────────────────────────────── */
.ls-hero-badge[b-koow6josvm] {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    font-family: var(--ls-font-mono);
    font-size: 0.7rem;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--ls-ink-muted);
    border: 1px solid var(--ls-hairline);
    background: rgba(255, 255, 255, 0.02);
    border-radius: 999px;
    padding: 0.4rem 1rem;
    margin-bottom: 1.75rem;
    animation: fadeSlideUp 0.5s ease both;
}

.ls-hero-badge-dot[b-koow6josvm] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--success);
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.6);
    animation: lsPing-b-koow6josvm 2s ease-out infinite;
}

@keyframes lsPing-b-koow6josvm {
    0%   { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.55); }
    70%  { box-shadow: 0 0 0 7px rgba(34, 197, 94, 0); }
    100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

/* ── Headline ─────────────────────────────────────────────── */
.ls-hero-headline[b-koow6josvm] {
    font-family: var(--ls-font-display);
    font-size: clamp(2.6rem, 5.4vw, 3.7rem);
    font-weight: 600;
    line-height: 1.04;
    letter-spacing: -0.02em;
    color: var(--ls-ink);
    margin: 0;
}

.ls-hero-line2[b-koow6josvm] {
    display: block;
    margin-top: 0.25rem;
}

.word-anim[b-koow6josvm] {
    display: inline-block;
    opacity: 0;
    transform: translateY(0.55em);
    filter: blur(8px);
    animation: lsWordIn-b-koow6josvm 0.6s var(--ls-ease) forwards;
}

.ls-hero-headline > .word-anim:nth-child(1)[b-koow6josvm] { animation-delay: 0.14s; }
.ls-hero-headline > .word-anim:nth-child(2)[b-koow6josvm] { animation-delay: 0.20s; }
.ls-hero-headline > .word-anim:nth-child(3)[b-koow6josvm] { animation-delay: 0.26s; }
.ls-hero-headline > .word-anim:nth-child(4)[b-koow6josvm] { animation-delay: 0.32s; }
.ls-hero-headline > .word-anim:nth-child(5)[b-koow6josvm] { animation-delay: 0.38s; }
.ls-hero-line2 > .word-anim:nth-child(1)[b-koow6josvm] { animation-delay: 0.46s; }
.ls-hero-line2 > .word-anim:nth-child(2)[b-koow6josvm] { animation-delay: 0.52s; }
.ls-hero-line2 > .word-anim:nth-child(3)[b-koow6josvm] { animation-delay: 0.58s; }
.ls-hero-line2 > .word-anim:nth-child(4)[b-koow6josvm] { animation-delay: 0.64s; }

@keyframes lsWordIn-b-koow6josvm {
    to { opacity: 1; transform: translateY(0); filter: blur(0); }
}

/* ── Sub ──────────────────────────────────────────────────── */
.ls-hero-sub[b-koow6josvm] {
    max-width: 34rem;
    margin: 1.75rem 0 0;
    color: var(--ls-ink-soft);
    font-size: 1.05rem;
    line-height: 1.7;
    opacity: 0;
    animation: fadeSlideUp 0.6s ease 0.7s forwards;
}

/* ── CTAs ─────────────────────────────────────────────────── */
.ls-hero-cta[b-koow6josvm] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 2.25rem;
    opacity: 0;
    animation: fadeSlideUp 0.55s ease 0.82s forwards;
}

/* ── Ribbon ───────────────────────────────────────────────── */
.ls-hero-ribbon[b-koow6josvm] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    max-width: 34rem;
    margin: 3rem 0 0;
    border: 1px solid var(--ls-hairline);
    border-radius: 16px;
    overflow: hidden;
    opacity: 0;
    animation: fadeSlideUp 0.55s ease 0.95s forwards;
}

.ls-hero-ribbon-item[b-koow6josvm] {
    background: rgba(255, 255, 255, 0.015);
    padding: 1rem;
}

.ls-hero-ribbon-item dt[b-koow6josvm] {
    font-family: var(--ls-font-mono);
    font-size: 0.58rem;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--ls-ink-muted);
}

.ls-hero-ribbon-item dd[b-koow6josvm] {
    margin: 0.4rem 0 0;
    font-size: 0.8rem;
    line-height: 1.35;
    color: var(--ls-ink-soft);
}

/* ── Visual ───────────────────────────────────────────────── */
.ls-hero-visual[b-koow6josvm] {
    opacity: 0;
    transform: scale(0.94);
    filter: blur(14px);
    animation: lsVisualIn-b-koow6josvm 1s var(--ls-ease) 0.4s forwards;
}

@keyframes lsVisualIn-b-koow6josvm {
    to { opacity: 1; transform: scale(1); filter: blur(0); }
}

/* ── Scroll cue ───────────────────────────────────────────── */
.ls-hero-scroll[b-koow6josvm] {
    position: absolute;
    left: 50%;
    bottom: 1.75rem;
    transform: translateX(-50%);
    z-index: 2;
    opacity: 0;
    animation: fadeSlideUp 0.5s ease 1.6s forwards;
}

.ls-hero-scroll-track[b-koow6josvm] {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 20px;
    height: 34px;
    padding: 5px 0;
    border: 1px solid var(--ls-hairline-bright);
    border-radius: 999px;
}

.ls-hero-scroll-dot[b-koow6josvm] {
    width: 4px;
    height: 7px;
    border-radius: 999px;
    background: var(--ls-steel);
    animation: lsScrollDot-b-koow6josvm 1.8s ease-in-out infinite;
}

@keyframes lsScrollDot-b-koow6josvm {
    0%, 100% { transform: translateY(0); opacity: 1; }
    50%       { transform: translateY(9px); opacity: 0.2; }
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 991px) {
    .ls-hero[b-koow6josvm] {
        min-height: 0;
        align-items: flex-start;
    }

    .ls-hero-inner[b-koow6josvm] {
        grid-template-columns: 1fr;
        gap: 3rem;
        padding-top: calc(var(--nav-height) + 1rem);
        padding-bottom: 4rem;
    }

    .ls-hero-visual[b-koow6josvm] { order: -1; }
    .ls-hero-ribbon[b-koow6josvm] { max-width: none; }
    .ls-hero-scroll[b-koow6josvm] { display: none; }
}

@media (max-width: 560px) {
    .ls-hero-ribbon[b-koow6josvm] { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .word-anim[b-koow6josvm],
    .ls-hero-badge[b-koow6josvm],
    .ls-hero-sub[b-koow6josvm],
    .ls-hero-cta[b-koow6josvm],
    .ls-hero-ribbon[b-koow6josvm],
    .ls-hero-visual[b-koow6josvm],
    .ls-hero-scroll[b-koow6josvm] {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
    }

    .ls-hero-badge-dot[b-koow6josvm],
    .ls-hero-scroll-dot[b-koow6josvm] { animation: none !important; }
}
/* /Components/Home/HeroVisual.razor.rz.scp.css */
/* Agent-mesh visual for the hero. */

.ls-hv[b-beqyehv32l] {
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
    padding: 1.75rem;
}

.ls-hv-head[b-beqyehv32l] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.ls-hv-kicker[b-beqyehv32l] {
    margin: 0;
    font-family: var(--ls-font-mono);
    font-size: 0.62rem;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--ls-ink-muted);
}

.ls-hv-sub[b-beqyehv32l] {
    margin: 0.25rem 0 0;
    font-size: 0.85rem;
    color: var(--ls-ink-soft);
}

.ls-hv-live[b-beqyehv32l] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    border: 1px solid var(--ls-hairline);
    border-radius: 999px;
    padding: 0.2rem 0.6rem;
    font-size: 0.62rem;
    color: var(--ls-ink-muted);
}

.ls-hv-live-dot[b-beqyehv32l] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--success);
    animation: lsPing 2s ease-out infinite;
}

.ls-hv-stage[b-beqyehv32l] {
    margin-top: 1rem;
}

.ls-hv-stage svg[b-beqyehv32l] {
    width: 100%;
    height: auto;
    display: block;
}

/* animated svg parts */
.ls-hv-link[b-beqyehv32l] {
    stroke-dasharray: 200;
    stroke-dashoffset: 200;
    animation: lsDraw-b-beqyehv32l 0.9s var(--ls-ease) forwards;
}

@keyframes lsDraw-b-beqyehv32l {
    to { stroke-dashoffset: 0; }
}

.ls-hv-pulse[b-beqyehv32l] {
    transform-box: fill-box;
    transform-origin: center;
    animation: lsPulseTravel-b-beqyehv32l 2.4s ease-in-out infinite;
    opacity: 0;
}

@keyframes lsPulseTravel-b-beqyehv32l {
    0%   { transform: translate(0, 0); opacity: 0; }
    20%  { opacity: 1; }
    80%  { opacity: 1; }
    100% { transform: translate(var(--tx), var(--ty)); opacity: 0; }
}

.ls-hv-core-ring[b-beqyehv32l] {
    transform-box: fill-box;
    transform-origin: center;
    animation: lsCoreRing-b-beqyehv32l 3s ease-in-out infinite;
}

@keyframes lsCoreRing-b-beqyehv32l {
    0%, 100% { transform: scale(1); opacity: 0.6; }
    50%       { transform: scale(1.3); opacity: 0; }
}

.ls-hv-node[b-beqyehv32l] {
    opacity: 0;
    animation: lsFadeIn-b-beqyehv32l 0.5s ease forwards;
}

@keyframes lsFadeIn-b-beqyehv32l {
    to { opacity: 1; }
}

/* score */
.ls-hv-score[b-beqyehv32l] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: 0.5rem;
    padding: 0.75rem 1rem;
    border: 1px solid var(--ls-hairline);
    border-radius: 16px;
    background: rgba(6, 8, 20, 0.4);
}

.ls-hv-score-label[b-beqyehv32l] {
    margin: 0;
    font-size: 0.58rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--ls-ink-faint);
}

.ls-hv-score-value[b-beqyehv32l] {
    margin: 0.35rem 0 0;
    font-family: var(--ls-font-display);
    font-size: 1.5rem;
    color: var(--ls-ink);
}

.ls-hv-score-max[b-beqyehv32l] { color: var(--ls-ink-muted); }

.ls-hv-bars[b-beqyehv32l] {
    display: flex;
    align-items: flex-end;
    gap: 3px;
}

.ls-hv-bars span[b-beqyehv32l] {
    width: 6px;
    border-radius: 999px;
    background: linear-gradient(to top, rgba(59, 130, 246, 0.4), var(--ls-sky));
}

.ls-hv-readout[b-beqyehv32l] {
    margin: 1rem 0 0;
    display: grid;
    gap: 0.6rem;
}

.ls-hv-readout > div[b-beqyehv32l] {
    display: grid;
    grid-template-columns: minmax(6.5rem, auto) 1fr;
    align-items: baseline;
    gap: 0.35rem 1rem;
    font-size: 0.78rem;
}

.ls-hv-readout dt[b-beqyehv32l] { color: var(--ls-ink-muted); margin: 0; }
.ls-hv-readout dd[b-beqyehv32l] { color: var(--ls-ink-soft); margin: 0; text-align: right; }

@media (max-width: 420px) {
    .ls-hv-readout > div[b-beqyehv32l] {
        grid-template-columns: 1fr;
        gap: 0.15rem;
    }
    .ls-hv-readout dd[b-beqyehv32l] { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
    .ls-hv-link[b-beqyehv32l] { stroke-dashoffset: 0 !important; animation: none !important; }
    .ls-hv-pulse[b-beqyehv32l],
    .ls-hv-core-ring[b-beqyehv32l] { animation: none !important; }
    .ls-hv-pulse[b-beqyehv32l] { opacity: 0 !important; }
    .ls-hv-node[b-beqyehv32l] { opacity: 1 !important; animation: none !important; }
}
/* /Components/Home/HowItWorksSection.razor.rz.scp.css */
.ls-how-head[b-3rqduu20vl] {
    max-width: 42rem;
}

.ls-how-track[b-3rqduu20vl] {
    position: relative;
    list-style: none;
    margin: 4rem 0 0;
    padding: 0;
    display: grid;
    gap: 2.5rem;
}

.ls-how-rail[b-3rqduu20vl] {
    position: absolute;
    left: 0;
    top: 0.5rem;
    bottom: 0.5rem;
    width: 1px;
    background: var(--ls-hairline);
}

.ls-how-rail-fill[b-3rqduu20vl] {
    position: absolute;
    inset: 0;
    transform-origin: top;
    transform: scaleY(0);
    background: linear-gradient(to bottom, var(--ls-sky), var(--ls-azure), var(--ls-electric));
}

.ls-how-rail-dot[b-3rqduu20vl] {
    position: absolute;
    left: -3px;
    top: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ls-sky);
    box-shadow: 0 0 16px 4px rgba(56, 189, 248, 0.7);
}

.ls-how-step[b-3rqduu20vl] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding-left: 2.25rem;
}

.ls-how-node[b-3rqduu20vl] {
    position: absolute;
    left: -5px;
    top: 0.35rem;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 1px solid rgba(159, 178, 204, 0.5);
    background: var(--ls-abyss);
}

.ls-how-n[b-3rqduu20vl] {
    font-family: var(--ls-font-mono);
    font-size: 0.75rem;
    color: rgba(56, 189, 248, 0.8);
}

.ls-how-step h3[b-3rqduu20vl] {
    margin: 0;
    font-size: 1.1rem;
    color: var(--ls-ink);
}

.ls-how-step p[b-3rqduu20vl] {
    margin: 0.4rem 0 0;
    max-width: 36rem;
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--ls-ink-soft);
}

@media (min-width: 640px) {
    .ls-how-step[b-3rqduu20vl] {
        flex-direction: row;
        align-items: baseline;
        gap: 1.25rem;
        padding-left: 2.5rem;
    }
}

.ls-how-foot[b-3rqduu20vl] {
    margin-top: 3.5rem;
    padding: 1.5rem 1.75rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

@media (min-width: 640px) {
    .ls-how-foot[b-3rqduu20vl] {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}

.ls-how-foot-live[b-3rqduu20vl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.88rem;
    color: var(--ls-ink-soft);
}

.ls-how-foot-dot[b-3rqduu20vl] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--ls-sky);
    animation: lsPing 2s ease-out infinite;
}

.ls-how-foot-flow[b-3rqduu20vl] {
    margin: 0;
    font-family: var(--ls-font-mono);
    font-size: 0.7rem;
    color: var(--ls-ink-muted);
}

@media (prefers-reduced-motion: reduce) {
    .ls-how-rail-fill[b-3rqduu20vl] { transform: scaleY(1) !important; }
    .ls-how-rail-dot[b-3rqduu20vl] { display: none; }
    .ls-how-foot-dot[b-3rqduu20vl] { animation: none !important; }
}
/* /Components/Home/PillarCard.razor.rz.scp.css */
.ls-pillar[b-ulv4junic5] {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 1.75rem;
    overflow: hidden;
    transition: transform 0.25s var(--ls-ease);
}

.ls-pillar[b-ulv4junic5]::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(240px circle at 50% 0%, rgba(56, 189, 248, 0.12), transparent 70%);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.ls-pillar:hover[b-ulv4junic5] {
    transform: translateY(-4px);
}

.ls-pillar:hover[b-ulv4junic5]::after {
    opacity: 1;
}

.ls-pillar-wide[b-ulv4junic5] {
    grid-column: span 2;
}

@media (max-width: 980px) {
    .ls-pillar-wide[b-ulv4junic5] { grid-column: span 2; }
}

@media (max-width: 640px) {
    .ls-pillar-wide[b-ulv4junic5] { grid-column: span 1; }
}

.ls-pillar-top[b-ulv4junic5] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ls-pillar-index[b-ulv4junic5] {
    font-family: var(--ls-font-mono);
    font-size: 0.58rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--ls-ink-faint);
}

.ls-pillar-dot[b-ulv4junic5] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(159, 178, 204, 0.4);
    transition: background 0.25s;
}

.ls-pillar:hover .ls-pillar-dot[b-ulv4junic5] {
    background: var(--ls-sky);
}

.ls-pillar h3[b-ulv4junic5] {
    position: relative;
    margin: 1.25rem 0 0;
    font-size: 1.15rem;
    color: var(--ls-ink);
}

.ls-pillar-wide h3[b-ulv4junic5] {
    font-size: 1.5rem;
}

.ls-pillar-body[b-ulv4junic5] {
    position: relative;
    flex: 1;
    margin: 0.75rem 0 0;
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--ls-ink-soft);
}

.ls-pillar-meta[b-ulv4junic5] {
    position: relative;
    margin: 1.25rem 0 0;
    padding-top: 0.75rem;
    border-top: 1px solid var(--ls-hairline);
    font-family: var(--ls-font-mono);
    font-size: 0.68rem;
    line-height: 1.4;
    color: var(--ls-ink-muted);
}
/* /Components/Home/PillarsSection.razor.rz.scp.css */
.ls-pillars-head[b-gia39060zv] {
    max-width: 42rem;
}

.ls-pillars-grid[b-gia39060zv] {
    margin-top: 3.5rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

@media (max-width: 980px) {
    .ls-pillars-grid[b-gia39060zv] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .ls-pillars-grid[b-gia39060zv] {
        grid-template-columns: 1fr;
    }
}

.ls-pillars-foot[b-gia39060zv] {
    margin-top: 1.5rem;
    padding: 1.75rem 2rem;
    border: 1px solid var(--ls-hairline);
    border-radius: var(--ls-radius);
    background: rgba(6, 8, 20, 0.4);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.ls-pillars-foot-title[b-gia39060zv] {
    margin: 0;
    font-family: var(--ls-font-display);
    font-size: 1rem;
    color: var(--ls-ink);
}

.ls-pillars-foot-body[b-gia39060zv] {
    margin: 0.6rem 0 0;
    max-width: 46rem;
    font-size: 0.88rem;
    line-height: 1.6;
    color: var(--ls-ink-muted);
}

.ls-pillars-foot-link[b-gia39060zv] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.85rem;
    color: var(--ls-sky);
    text-decoration: none;
    white-space: nowrap;
    transition: gap 0.2s var(--ls-ease);
}

.ls-pillars-foot-link:hover[b-gia39060zv] {
    gap: 0.7rem;
}

@media (max-width: 760px) {
    .ls-pillars-foot[b-gia39060zv] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.25rem;
    }
}
/* /Components/Home/PlatformSection.razor.rz.scp.css */
.ls-platform-head[b-j4mp8unyvs] {
    max-width: 42rem;
}

.ls-compare[b-j4mp8unyvs] {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    margin-top: 3.5rem;
}

.ls-compare-link[b-j4mp8unyvs] {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 4rem;
    height: 1px;
    transform: translate(-50%, -50%);
    background: linear-gradient(90deg, rgba(148, 136, 163, 0.35), rgba(159, 178, 204, 0.2), rgba(56, 189, 248, 0.7));
}

.ls-compare-card[b-j4mp8unyvs] {
    position: relative;
    padding: 2rem;
    transition: transform 0.25s var(--ls-ease);
    overflow: hidden;
}

.ls-compare-card[b-j4mp8unyvs]::after {
    content: '';
    position: absolute;
    inset: 0 0 auto 0;
    height: 10rem;
    opacity: 0.4;
    background: radial-gradient(60% 100% at 50% 0%, rgba(124, 136, 163, 0.16), transparent 70%);
    pointer-events: none;
}

.ls-compare-card-for[b-j4mp8unyvs]::after {
    background: radial-gradient(60% 100% at 50% 0%, rgba(56, 189, 248, 0.2), transparent 70%);
}

.ls-compare-card:hover[b-j4mp8unyvs] {
    transform: translateY(-4px);
}

.ls-compare-card-top[b-j4mp8unyvs] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.ls-compare-tag[b-j4mp8unyvs] {
    font-family: var(--ls-font-mono);
    font-size: 0.6rem;
    letter-spacing: 0.24em;
    text-transform: uppercase;
}

.ls-compare-tag-off[b-j4mp8unyvs] { color: var(--ls-ink-faint); }
.ls-compare-tag-on[b-j4mp8unyvs]  { color: rgba(56, 189, 248, 0.85); }

.ls-compare-pill[b-j4mp8unyvs] {
    border: 1px solid rgba(56, 189, 248, 0.3);
    background: rgba(56, 189, 248, 0.1);
    color: var(--ls-sky);
    border-radius: 999px;
    padding: 0.1rem 0.6rem;
    font-size: 0.6rem;
}

.ls-compare-card h3[b-j4mp8unyvs] {
    position: relative;
    margin: 0.75rem 0 0;
    font-size: 1.25rem;
    color: var(--ls-ink);
}

.ls-compare-card ul[b-j4mp8unyvs] {
    position: relative;
    list-style: none;
    margin: 1.5rem 0 0;
    padding: 0;
    display: grid;
    gap: 0.9rem;
}

.ls-compare-card li[b-j4mp8unyvs] {
    display: flex;
    gap: 0.75rem;
    font-size: 0.9rem;
    line-height: 1.55;
    color: var(--ls-ink-muted);
}

.ls-compare-card-for li[b-j4mp8unyvs] { color: var(--ls-ink-soft); }

.ls-compare-icon[b-j4mp8unyvs] {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    border: 1px solid currentColor;
}

.ls-compare-icon-off[b-j4mp8unyvs] { color: var(--ls-ink-faint); }
.ls-compare-icon-on[b-j4mp8unyvs]  { color: var(--ls-sky); }

.ls-platform-foot[b-j4mp8unyvs] {
    margin: 2.5rem auto 0;
    max-width: 40rem;
    text-align: center;
    font-size: 0.9rem;
    color: var(--ls-ink-muted);
}

@media (max-width: 860px) {
    .ls-compare[b-j4mp8unyvs] {
        grid-template-columns: 1fr;
    }

    .ls-compare-link[b-j4mp8unyvs] { display: none; }
}
/* /Components/Home/StatsSection.razor.rz.scp.css */
.stats-section[b-bldyv8vy7m] {
    background: var(--bg-page);
    padding: 4rem 0;
    border-top: 1px solid var(--accent-border-sub);
    border-bottom: 1px solid var(--accent-border-sub);
}

.stats-grid[b-bldyv8vy7m] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.stat-block[b-bldyv8vy7m] {
    text-align: center;
    padding: 2rem;
    position: relative;
}

.stat-block:not(:last-child)[b-bldyv8vy7m] {
    border-right: 1px solid var(--accent-border-sub);
}

.stat-value-row[b-bldyv8vy7m] {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.1em;
    margin-bottom: 0.5rem;
}

.stat-count[b-bldyv8vy7m] {
    font-size: clamp(2.5rem, 5vw, 4rem);
    color: var(--accent);
    font-weight: 800;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.stat-suffix[b-bldyv8vy7m] {
    font-size: clamp(1.5rem, 3vw, 2.5rem);
    color: var(--accent);
    font-weight: 800;
    line-height: 1;
}

.stat-label[b-bldyv8vy7m] {
    color: var(--text-secondary);
    font-size: 0.9rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-top: 0.25rem;
}

.stat-icon-wrap[b-bldyv8vy7m] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.stat-check-icon[b-bldyv8vy7m] {
    font-size: clamp(2.5rem, 5vw, 4rem);
    color: var(--accent);
    filter: drop-shadow(0 0 10px rgba(14, 165, 233, 0.5));
    animation: glowPulse 2.5s ease-in-out infinite;
}

@media (max-width: 768px) {
    .stats-grid[b-bldyv8vy7m] {
        grid-template-columns: 1fr;
    }

    .stat-block:not(:last-child)[b-bldyv8vy7m] {
        border-right: none;
        border-bottom: 1px solid var(--accent-border-sub);
    }
}

@media (prefers-reduced-motion: reduce) {
    .stat-check-icon[b-bldyv8vy7m] {
        animation: none;
    }
}
/* /Components/Layout/CustomerLayout.razor.rz.scp.css */
/* Styles handled by MudBlazor theme and app.css overrides */
/* /Components/Layout/CustomerNavMenu.razor.rz.scp.css */
/* Styles handled by MudBlazor NavMenu */

/* Nudge dots (needs-agent-registration / needs-scope-assignment): a plain flex-laid-out span next
   to the label, not MudBadge — MudBadge anchors its dot to the corner of its child's bounding box,
   which is designed for wrapping an icon/avatar, not inline nav-link text; wrapping text produced a
   badge floating well outside the actual label (Bart, 2026-08-30 screenshot showed it drifting up
   into the nav item above). This mirrors the plain-span-in-a-flex-row pattern the Agent's own
   NavMenu.razor already uses for its config-required/restart-pending dots. */
.cs-nav-link-with-dot[b-4a8a7dd0pc] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.cs-nav-dot[b-4a8a7dd0pc] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--mud-palette-error);
    flex-shrink: 0;
}
/* /Components/Layout/Footer.razor.rz.scp.css */
.ls-footer[b-qcwxgp0yq4] {
    position: relative;
    z-index: 1;
    background: var(--ls-abyss);
    border-top: 1px solid var(--ls-hairline);
}

.ls-footer-inner[b-qcwxgp0yq4] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 4rem 1.5rem 2.5rem;
}

@media (min-width: 768px) {
    .ls-footer-inner[b-qcwxgp0yq4] { padding-inline: 2rem; }
}

.ls-footer-top[b-qcwxgp0yq4] {
    display: grid;
    grid-template-columns: 1.5fr 2.5fr;
    gap: 3rem;
}

@media (max-width: 860px) {
    .ls-footer-top[b-qcwxgp0yq4] {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}

.ls-footer-brand[b-qcwxgp0yq4] {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0.6rem;
    align-content: start;
}

.ls-footer-mark[b-qcwxgp0yq4] { display: inline-flex; }

.ls-footer-name[b-qcwxgp0yq4] {
    font-family: var(--ls-font-display);
    font-weight: 600;
    font-size: 0.95rem;
    color: var(--ls-ink);
}

.ls-footer-blurb[b-qcwxgp0yq4] {
    grid-column: 1 / -1;
    margin: 0.75rem 0 0;
    max-width: 22rem;
    font-size: 0.82rem;
    line-height: 1.6;
    color: var(--ls-ink-muted);
}

.ls-footer-cols[b-qcwxgp0yq4] {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem 3.5rem;
}

.ls-footer-cols > div[b-qcwxgp0yq4] {
    min-width: 8rem;
}

@media (max-width: 620px) {
    .ls-footer-cols[b-qcwxgp0yq4] {
        gap: 1.75rem 2.5rem;
    }
    .ls-footer-cols > div[b-qcwxgp0yq4] {
        min-width: 7rem;
    }
}

.ls-footer-cols h3[b-qcwxgp0yq4] {
    margin: 0 0 1rem;
    font-family: var(--ls-font-mono);
    font-size: 0.58rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--ls-ink-muted);
    font-weight: 500;
}

.ls-footer-cols a[b-qcwxgp0yq4] {
    display: block;
    margin-bottom: 0.65rem;
    font-size: 0.85rem;
    color: var(--ls-ink-muted);
    text-decoration: none;
    transition: color 0.18s;
}

.ls-footer-cols a:hover[b-qcwxgp0yq4] {
    color: var(--ls-ink);
}

.ls-footer-bottom[b-qcwxgp0yq4] {
    margin-top: 3.5rem;
    padding-top: 2rem;
    border-top: 1px solid var(--ls-hairline);
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    font-size: 0.72rem;
    color: var(--ls-ink-faint);
}

@media (min-width: 640px) {
    .ls-footer-bottom[b-qcwxgp0yq4] {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}

.ls-footer-bottom p[b-qcwxgp0yq4] { margin: 0; max-width: 40rem; }

.ls-footer-copy[b-qcwxgp0yq4] {
    font-family: var(--ls-font-mono);
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.cloudspector-layout[b-z3g8lvzjuw] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.cloudspector-layout main[b-z3g8lvzjuw] {
    flex: 1;
    /* clearance for the fixed nav; the .landing route cancels this with a
       matching negative margin so its hero can fill from the top */
    padding-top: calc(var(--nav-height) + 0.5rem);
}

.min-vh-content[b-z3g8lvzjuw] {
    min-height: calc(100vh - 200px);
}

#blazor-error-ui[b-z3g8lvzjuw] {
    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-z3g8lvzjuw] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* /Components/Layout/NavBar.razor.rz.scp.css */
/* The floating pill nav is styled globally in wwwroot/app.css (search
   "Floating pill nav"). It cannot live here: NavBar renders <NavLink>
   child components whose <a> elements do not get a scoped-CSS attribute,
   so scoped rules would miss the brand, Marketplace and Sign in links. */
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-dumqp8wqj7] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    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.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-dumqp8wqj7] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-dumqp8wqj7] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-dumqp8wqj7] {
    font-size: 1.1rem;
}

.bi[b-dumqp8wqj7] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-dumqp8wqj7] {
    background-image: 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-plus-square-fill-nav-menu[b-dumqp8wqj7] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-dumqp8wqj7] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-dumqp8wqj7] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-dumqp8wqj7] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-dumqp8wqj7] {
        padding-bottom: 1rem;
    }

    .nav-item[b-dumqp8wqj7]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-dumqp8wqj7]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-dumqp8wqj7]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-dumqp8wqj7] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-dumqp8wqj7] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-dumqp8wqj7] {
        display: none;
    }

    .nav-scrollable[b-dumqp8wqj7] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-0o1mi32ieh],
.components-reconnect-repeated-attempt-visible[b-0o1mi32ieh],
.components-reconnect-failed-visible[b-0o1mi32ieh],
.components-pause-visible[b-0o1mi32ieh],
.components-resume-failed-visible[b-0o1mi32ieh],
.components-rejoining-animation[b-0o1mi32ieh] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-retrying[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-failed[b-0o1mi32ieh],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-0o1mi32ieh] {
    display: block;
}


#components-reconnect-modal[b-0o1mi32ieh] {
    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-0o1mi32ieh 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-0o1mi32ieh 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-0o1mi32ieh 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-0o1mi32ieh]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-0o1mi32ieh 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-0o1mi32ieh {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-0o1mi32ieh {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-0o1mi32ieh {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-0o1mi32ieh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-0o1mi32ieh] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-0o1mi32ieh] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-0o1mi32ieh] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-0o1mi32ieh] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-0o1mi32ieh] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-0o1mi32ieh] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-0o1mi32ieh 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-0o1mi32ieh] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-0o1mi32ieh {
    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/Demo.razor.rz.scp.css */
.ls-demo[b-6z0r8jjbps] {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1.25rem 4rem;
    background: var(--ls-abyss);
    color: var(--ls-ink);
    overflow: hidden;
}

.ls-demo-inner[b-6z0r8jjbps] {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 520px;
    text-align: center;
}

.ls-demo-head[b-6z0r8jjbps] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ls-demo-title[b-6z0r8jjbps] {
    margin: 1.25rem 0 0;
    font-family: var(--ls-font-display);
    font-size: clamp(1.6rem, 3.6vw, 2.2rem);
    line-height: 1.15;
    color: var(--ls-ink);
}

.ls-demo-sub[b-6z0r8jjbps] {
    margin: 1rem 0 0;
    font-size: 0.98rem;
    line-height: 1.65;
    color: var(--ls-ink-soft);
}

.ls-demo-card[b-6z0r8jjbps] {
    position: relative;
    margin-top: 2.5rem;
    padding: 2.25rem;
    overflow: hidden;
    text-align: left;
}

.ls-demo-card-halo[b-6z0r8jjbps] {
    position: absolute;
    inset: -6rem 0 auto 0;
    height: 11rem;
    background: radial-gradient(50% 100% at 50% 0%, rgba(56, 189, 248, 0.2), transparent 70%);
    pointer-events: none;
}

.ls-demo-row[b-6z0r8jjbps] {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1rem 1.15rem;
    border: 1px solid var(--ls-hairline);
    border-radius: 14px;
    background: rgba(56, 189, 248, 0.06);
}

.ls-demo-row p[b-6z0r8jjbps] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.55;
    color: var(--ls-ink-soft);
}

.ls-demo-row-icon[b-6z0r8jjbps] {
    color: var(--ls-sky);
    font-size: 1rem;
    flex-shrink: 0;
    line-height: 1.4;
}

.ls-demo-contact[b-6z0r8jjbps] {
    position: relative;
    margin-top: 1.75rem;
    text-align: center;
}

.ls-demo-contact-label[b-6z0r8jjbps] {
    margin: 0;
    font-family: var(--ls-font-mono);
    font-size: 0.6rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--ls-ink-faint);
}

.ls-demo-contact-link[b-6z0r8jjbps] {
    display: inline-block;
    margin-top: 0.4rem;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--ls-sky);
    text-decoration: none;
}

.ls-demo-contact-link:hover[b-6z0r8jjbps] {
    color: var(--ls-chrome);
}

.ls-demo-btn[b-6z0r8jjbps] {
    position: relative;
    width: 100%;
    margin-top: 1.25rem;
}
/* /Components/Pages/Error.razor.rz.scp.css */
.cs-error[b-8hnakw5cby] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1.25rem;
    background: var(--ls-abyss, #0a0d14);
    color: var(--ls-ink, #e9eef8);
    font-family: 'Inter', 'Segoe UI', -apple-system, sans-serif;
}

.cs-error-card[b-8hnakw5cby] {
    width: 100%;
    max-width: 420px;
    text-align: center;
}

.cs-error-mark[b-8hnakw5cby] {
    position: relative;
    display: inline-flex;
}

.cs-error-mark[b-8hnakw5cby]::before {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(56, 189, 248, 0.35), transparent 70%);
    filter: blur(6px);
}

.cs-error-mark svg[b-8hnakw5cby] {
    position: relative;
}

.cs-error-card h1[b-8hnakw5cby] {
    margin: 1.25rem 0 0;
    font-family: 'Space Grotesk', 'Inter', sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: var(--ls-ink, #e9eef8);
}

.cs-error-card p[b-8hnakw5cby] {
    margin: 0.75rem 0 0;
    font-size: 0.92rem;
    line-height: 1.6;
    color: var(--ls-ink-soft, #b7c0d4);
}

.cs-error-btn[b-8hnakw5cby] {
    display: inline-flex;
    align-items: center;
    margin-top: 1.75rem;
    padding: 0.7rem 1.5rem;
    border-radius: 999px;
    font-size: 0.88rem;
    font-weight: 500;
    text-decoration: none;
    color: #06080f;
    background: linear-gradient(180deg, #d8e2f0, #9fb2cc);
    box-shadow: 0 18px 50px -18px rgba(56, 189, 248, 0.55);
}

.cs-error-id[b-8hnakw5cby] {
    margin-top: 1.75rem !important;
    font-size: 0.7rem !important;
    color: var(--ls-ink-faint, #4a5570) !important;
}

.cs-error-id code[b-8hnakw5cby] {
    font-family: 'JetBrains Mono', ui-monospace, monospace;
    color: var(--ls-ink-muted, #7c88a3);
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* Landing shell. The fixed atmosphere layer is painted behind the sections;
   each section component lifts itself onto z-index 1 in its own stylesheet. */

.landing[b-yadr6also0] {
    isolation: isolate;
}
/* /Components/Pages/Login.razor.rz.scp.css */
.ls-login[b-krdgu80cso] {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1.25rem 3rem;
    background: var(--ls-abyss);
    color: var(--ls-ink);
    overflow: hidden;
}

.ls-login-card[b-krdgu80cso] {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 420px;
    padding: 2.5rem;
    text-align: center;
    overflow: hidden;
}

.ls-login-halo[b-krdgu80cso] {
    position: absolute;
    inset: -6rem 0 auto 0;
    height: 11rem;
    background: radial-gradient(50% 100% at 50% 0%, rgba(56, 189, 248, 0.24), transparent 70%);
    pointer-events: none;
}

.ls-login-brand[b-krdgu80cso] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
}

.ls-login-mark[b-krdgu80cso] {
    position: relative;
    display: inline-flex;
}

.ls-login-mark[b-krdgu80cso]::after {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: 50%;
    background: rgba(56, 189, 248, 0.25);
    filter: blur(7px);
    z-index: -1;
}

.ls-login-name[b-krdgu80cso] {
    font-family: var(--ls-font-display);
    font-weight: 600;
    font-size: 1rem;
    color: var(--ls-ink);
}

.ls-login-heading[b-krdgu80cso] {
    position: relative;
    margin: 1.5rem 0 0;
    font-family: var(--ls-font-display);
    font-size: 1.5rem;
    color: var(--ls-ink);
}

.ls-login-sub[b-krdgu80cso] {
    position: relative;
    margin: 0.5rem 0 0;
    font-size: 0.9rem;
    color: var(--ls-ink-muted);
}

.ls-login-alert[b-krdgu80cso] {
    position: relative;
    margin-top: 1.25rem;
    padding: 0.7rem 0.9rem;
    border-radius: 12px;
    border: 1px solid rgba(34, 197, 94, 0.3);
    background: rgba(34, 197, 94, 0.1);
    color: #86efac;
    font-size: 0.82rem;
}

.ls-login-btn[b-krdgu80cso] {
    position: relative;
    width: 100%;
    margin-top: 1.5rem;
}

.ls-login-divider[b-krdgu80cso] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1.5rem 0 0;
    color: var(--ls-ink-faint);
    font-size: 0.72rem;
}

.ls-login-divider[b-krdgu80cso]::before,
.ls-login-divider[b-krdgu80cso]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--ls-hairline);
}

.ls-login-note[b-krdgu80cso] {
    position: relative;
    margin: 1.5rem 0 0;
    font-size: 0.7rem;
    line-height: 1.55;
    color: var(--ls-ink-faint);
}
/* /Components/Pages/Marketplace.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════
   Marketplace — catalog layout
   ══════════════════════════════════════════════════════════ */

/* ── Page header ──────────────────────────────────────────── */
.mkt-page-header[b-r70hhw51wl] {
    background: var(--bg-page);
    padding: 5rem 0 2.5rem;
    border-bottom: 1px solid var(--accent-border-sub);
}

.mkt-page-title[b-r70hhw51wl] {
    font-size: clamp(1.75rem, 3.5vw, 2.75rem);
    font-weight: 800;
    color: var(--text-primary);
    line-height: 1.15;
    margin-bottom: 0.75rem;
}

.mkt-page-sub[b-r70hhw51wl] {
    color: var(--text-secondary);
    font-size: 1rem;
    line-height: 1.7;
    max-width: 600px;
    margin: 0;
}

/* ── Two-column layout ────────────────────────────────────── */
.mkt-layout[b-r70hhw51wl] {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 2.5rem;
    align-items: start;
    padding: 2.5rem 0 5rem;
}

/* ── Sidebar ──────────────────────────────────────────────── */
.mkt-sidebar[b-r70hhw51wl] {
    position: sticky;
    top: calc(var(--nav-height) + 1.5rem);
}

.mkt-sidebar-section[b-r70hhw51wl] {
    margin-bottom: 2rem;
}

.mkt-sidebar-title[b-r70hhw51wl] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--text-muted);
    margin-bottom: 0.75rem;
    padding-left: 0.5rem;
}

.mkt-sidebar-list[b-r70hhw51wl] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

/* Provider links */
.mkt-provider-link[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.45rem 0.75rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.18s, color 0.18s;
    cursor: default;
}

.mkt-provider-link-active[b-r70hhw51wl] {
    color: var(--text-primary) !important;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    cursor: pointer;
}

.mkt-provider-link-active:hover[b-r70hhw51wl] {
    background: rgba(14, 165, 233, 0.12);
    color: var(--accent-light) !important;
}

.mkt-provider-link-soon[b-r70hhw51wl] {
    color: var(--text-muted);
    opacity: 0.55;
}

.mkt-provider-dot[b-r70hhw51wl] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.mkt-provider-dot-azure[b-r70hhw51wl] { background: #0ea5e9; }
.mkt-provider-dot-gcp[b-r70hhw51wl]   { background: #22c55e; }
.mkt-provider-dot-aws[b-r70hhw51wl]   { background: #f59e0b; }

.mkt-soon-tag[b-r70hhw51wl] {
    margin-left: auto;
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted);
    background: rgba(100, 116, 139, 0.12);
    border-radius: 999px;
    padding: 0.1rem 0.45rem;
}

/* Category links */
.mkt-category-link[b-r70hhw51wl] {
    display: block;
    padding: 0.45rem 0.75rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary) !important;
    text-decoration: none;
    transition: background 0.18s, color 0.18s;
}

.mkt-category-link:hover[b-r70hhw51wl] {
    background: var(--accent-fill-dim);
    color: var(--accent-light) !important;
}

/* Sidebar CTA box */
.mkt-sidebar-cta[b-r70hhw51wl] {
    background: rgba(14, 165, 233, 0.04);
    border: 1px solid var(--accent-border-sub);
    border-radius: 10px;
    padding: 1rem;
    margin-top: 1rem;
}

.mkt-sidebar-cta p[b-r70hhw51wl] {
    color: var(--text-muted);
    font-size: 0.8rem;
    line-height: 1.5;
    margin-bottom: 0.75rem;
}

/* ── Sidebar group (Compliancy / Features parent items) ────── */
.mkt-sidebar-group[b-r70hhw51wl] {
    margin-bottom: 0.25rem;
}

.mkt-sidebar-group-label[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.75rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary) !important;
    text-decoration: none;
    transition: background 0.18s, color 0.18s;
}

.mkt-sidebar-group-label i[b-r70hhw51wl] {
    color: var(--accent);
    font-size: 0.8rem;
}

.mkt-sidebar-group-label:hover[b-r70hhw51wl] {
    background: var(--accent-fill-dim);
    color: var(--accent-light) !important;
}

.mkt-sidebar-sublist[b-r70hhw51wl] {
    padding-left: 1.25rem !important;
    margin-top: 0.1rem;
    margin-bottom: 0.5rem;
}

/* ── Main content ─────────────────────────────────────────── */
.mkt-main[b-r70hhw51wl] {
    min-width: 0;
}

/* ── Main group header (Compliancy / Features divider) ─────── */
.mkt-main-group-header[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--accent);
    margin-bottom: 1.5rem;
    margin-top: 0.5rem;
    scroll-margin-top: calc(var(--nav-height) + 1.5rem);
}

.mkt-main-group-header:not(:first-child)[b-r70hhw51wl] {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid var(--accent-border-sub);
}

.mkt-main-group-header i[b-r70hhw51wl] {
    font-size: 0.9rem;
}

/* ── Category section ─────────────────────────────────────── */
.mkt-category-section[b-r70hhw51wl] {
    margin-bottom: 3.5rem;
    scroll-margin-top: calc(var(--nav-height) + 1.5rem);
}

.mkt-category-header[b-r70hhw51wl] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--accent-border-sub);
}

.mkt-category-icon[b-r70hhw51wl] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 8px;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    color: var(--accent);
    font-size: 1.15rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

.mkt-category-heading[b-r70hhw51wl] {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.2rem;
}

.mkt-category-desc[b-r70hhw51wl] {
    color: var(--text-secondary);
    font-size: 0.875rem;
    line-height: 1.55;
    margin: 0;
}

/* ── Check bundle card ────────────────────────────────────── */
.mkt-card[b-r70hhw51wl] {
    display: flex;
    flex-direction: column;
    background: var(--bg-surface);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 12px;
    padding: 1.25rem;
    height: 100%;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.mkt-card:hover[b-r70hhw51wl] {
    transform: translateY(-3px);
    box-shadow: 0 0 20px rgba(14, 165, 233, 0.12);
    border-color: var(--accent-border);
}

.mkt-card-top[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.85rem;
}

.mkt-card-icon[b-r70hhw51wl] {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 7px;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    color: var(--accent);
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mkt-compat-badge[b-r70hhw51wl] {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border-radius: 999px;
    padding: 0.15rem 0.55rem;
    border: 1px solid;
}

.mkt-compat-azure[b-r70hhw51wl] {
    color: #0ea5e9;
    background: rgba(14, 165, 233, 0.10);
    border-color: rgba(14, 165, 233, 0.25);
}

.mkt-card-title[b-r70hhw51wl] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.35rem;
}

.mkt-card-desc[b-r70hhw51wl] {
    color: var(--text-secondary);
    font-size: 0.82rem;
    line-height: 1.55;
    margin-bottom: 0.85rem;
}

/* ── Animated description expand / collapse ───────────────── */
.mkt-desc-shell[b-r70hhw51wl] {
    position: relative;
    max-height: 8.25em;
    overflow: hidden;
    transition: max-height 0.48s cubic-bezier(0.16, 1, 0.3, 1);
}

.mkt-desc-shell-open[b-r70hhw51wl] {
    max-height: 600px;
}

.mkt-card-desc-in-shell[b-r70hhw51wl] {
    margin-bottom: 0;
}

.mkt-desc-veil[b-r70hhw51wl] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3.25rem;
    background: linear-gradient(to bottom, transparent, var(--bg-surface));
    transition: opacity 0.28s ease;
    pointer-events: none;
}

.mkt-desc-shell-open .mkt-desc-veil[b-r70hhw51wl] {
    opacity: 0;
}

.mkt-read-btn[b-r70hhw51wl] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.71rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: var(--accent);
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    border-radius: 999px;
    padding: 0.2rem 0.65rem 0.2rem 0.55rem;
    cursor: pointer;
    margin-top: 0.35rem;
    margin-bottom: 0.6rem;
    transition: background 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
    line-height: 1;
}

.mkt-read-btn:hover[b-r70hhw51wl] {
    background: rgba(14, 165, 233, 0.18);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.12);
    color: var(--accent);
}

.mkt-read-icon[b-r70hhw51wl] {
    font-size: 0.68rem;
    transition: transform 0.38s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes mktIconPulse-b-r70hhw51wl {
    0%, 100% { transform: translateY(0); }
    55%       { transform: translateY(2px); }
}

.mkt-read-btn:not(.mkt-read-btn-open) .mkt-read-icon[b-r70hhw51wl] {
    animation: mktIconPulse-b-r70hhw51wl 2.2s ease-in-out infinite;
}

.mkt-read-btn-open .mkt-read-icon[b-r70hhw51wl] {
    animation: none;
    transform: rotate(-180deg);
}

.mkt-card-checks[b-r70hhw51wl] {
    list-style: none;
    padding: 0;
    margin: 0 0 1rem;
    flex: 1;
}

.mkt-card-checks li[b-r70hhw51wl] {
    color: var(--text-secondary);
    font-size: 0.8rem;
    padding: 0.28rem 0;
    padding-left: 1rem;
    position: relative;
    border-bottom: 1px solid var(--accent-border-sub);
}

.mkt-card-checks li:last-child[b-r70hhw51wl] {
    border-bottom: none;
}

.mkt-card-checks li[b-r70hhw51wl]::before {
    content: "–";
    position: absolute;
    left: 0;
    color: var(--accent);
    font-weight: 700;
}

.mkt-tag-list[b-r70hhw51wl] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-bottom: 0.75rem;
}

.mkt-tag[b-r70hhw51wl] {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    border: 1px solid;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.mkt-includes-row[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.25rem;
    font-size: 0.72rem;
    color: var(--text-muted);
    margin-bottom: 0.75rem;
    padding: 0.3rem 0.5rem;
    background: rgba(99, 102, 241, 0.06);
    border-left: 2px solid rgba(99, 102, 241, 0.35);
    border-radius: 0 4px 4px 0;
}

.mkt-includes-row i[b-r70hhw51wl] {
    color: rgba(99, 102, 241, 0.7);
    font-size: 0.75rem;
}

.mkt-includes-item[b-r70hhw51wl] {
    font-weight: 600;
    color: var(--text-secondary);
}

.mkt-includes-sep[b-r70hhw51wl] {
    color: var(--text-muted);
}

.mkt-card-footer[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--accent-border-sub);
    flex-wrap: wrap;
    margin-top: auto;
}

.mkt-card-price[b-r70hhw51wl] {
    color: var(--success);
    font-size: 0.78rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.mkt-owned-badge[b-r70hhw51wl] {
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.1rem 0.4rem;
    border-radius: 999px;
    background: rgba(16, 185, 129, 0.12);
    color: #10b981;
    border: 1px solid rgba(16, 185, 129, 0.3);
    white-space: nowrap;
}

.btn-owned[b-r70hhw51wl] {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.3rem 0.75rem;
    border-radius: 6px;
    border: 1px solid #10b981;
    background: rgba(16, 185, 129, 0.08);
    color: #10b981;
    cursor: default;
    white-space: nowrap;
}

.btn-owned:disabled[b-r70hhw51wl] {
    opacity: 1;
}

.mkt-price-gate-sm[b-r70hhw51wl] {
    color: var(--text-muted);
    font-size: 0.78rem;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.18s;
}

.mkt-price-gate-sm:hover[b-r70hhw51wl] {
    color: var(--accent-light);
}

.mkt-card-price-enterprise[b-r70hhw51wl] {
    color: var(--text-muted);
    font-size: 0.78rem;
    font-weight: 600;
}

.mkt-card-feature[b-r70hhw51wl] {
    border-color: rgba(99, 102, 241, 0.15);
}

.mkt-card-feature .mkt-card-icon[b-r70hhw51wl] {
    background: rgba(99, 102, 241, 0.10);
    border-color: rgba(99, 102, 241, 0.25);
    color: #818cf8;
}

.mkt-card-feature:hover[b-r70hhw51wl] {
    border-color: rgba(99, 102, 241, 0.35);
    box-shadow: 0 0 20px rgba(99, 102, 241, 0.12);
}

/* ── Loading / error / empty states ──────────────────────── */
.mkt-loading[b-r70hhw51wl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 6rem 0;
    gap: 1rem;
    color: var(--text-secondary);
}

.mkt-spinner[b-r70hhw51wl] {
    width: 36px;
    height: 36px;
    border: 3px solid var(--accent-border);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: mktSpin-b-r70hhw51wl 0.75s linear infinite;
}

@keyframes mktSpin-b-r70hhw51wl {
    to { transform: rotate(360deg); }
}

.mkt-error-state[b-r70hhw51wl],
.mkt-empty-state[b-r70hhw51wl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 6rem 0;
    gap: 0.75rem;
    color: var(--text-secondary);
    text-align: center;
}

.mkt-error-state i[b-r70hhw51wl],
.mkt-empty-state i[b-r70hhw51wl] {
    font-size: 2.5rem;
    color: var(--text-muted);
    margin-bottom: 0.25rem;
}

/* ── Provider card variants ───────────────────────────────── */
.mkt-card-provider .mkt-provider-icon[b-r70hhw51wl] {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.mkt-provider-icon-azure[b-r70hhw51wl] {
    background: rgba(14, 165, 233, 0.12);
    border: 1px solid rgba(14, 165, 233, 0.25);
    color: #0ea5e9;
}

.mkt-provider-icon-gcp[b-r70hhw51wl] {
    background: rgba(34, 197, 94, 0.10);
    border: 1px solid rgba(34, 197, 94, 0.22);
    color: #22c55e;
}

.mkt-provider-icon-aws[b-r70hhw51wl] {
    background: rgba(245, 158, 11, 0.10);
    border: 1px solid rgba(245, 158, 11, 0.22);
    color: #f59e0b;
}

.mkt-card-soon[b-r70hhw51wl] {
    opacity: 0.55;
    pointer-events: none;
}

.mkt-soon-badge[b-r70hhw51wl] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--text-muted);
    background: rgba(100, 116, 139, 0.14);
    border: 1px solid rgba(100, 116, 139, 0.2);
    border-radius: 999px;
    padding: 0.2rem 0.65rem;
}

.mkt-coming-soon-text[b-r70hhw51wl] {
    color: var(--text-muted);
    font-style: italic;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 991.98px) {
    .mkt-layout[b-r70hhw51wl] {
        grid-template-columns: 1fr;
    }

    .mkt-sidebar[b-r70hhw51wl] {
        position: static;
        display: flex;
        flex-wrap: wrap;
        gap: 1.5rem;
    }

    .mkt-sidebar-section[b-r70hhw51wl] {
        margin-bottom: 0;
        min-width: 160px;
    }

    .mkt-sidebar-cta[b-r70hhw51wl] {
        flex: 1 1 100%;
        margin-top: 0;
    }

    .mkt-sidebar-list[b-r70hhw51wl] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.35rem;
    }

    .mkt-provider-link[b-r70hhw51wl],
    .mkt-category-link[b-r70hhw51wl] {
        white-space: nowrap;
    }
}

@media (max-width: 575.98px) {
    .mkt-card[b-r70hhw51wl] {
        height: auto;
    }
}

/* ── Purchase modal ────────────────────────────────────────── */
.mkt-modal-backdrop[b-r70hhw51wl] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.7);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9000;
    padding: 1rem;
}

.mkt-modal[b-r70hhw51wl] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 16px;
    width: 100%;
    max-width: 540px;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 32px 64px rgba(0,0,0,0.5);
    display: flex;
    flex-direction: column;
}

.mkt-modal-header[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem 1.75rem 1rem;
    border-bottom: 1px solid var(--accent-border-sub);
}

.mkt-modal-title[b-r70hhw51wl] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

.mkt-modal-close[b-r70hhw51wl] {
    background: none;
    border: none;
    color: var(--text-muted);
    font-size: 1.1rem;
    cursor: pointer;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    transition: color 0.15s, background 0.15s;
}

.mkt-modal-close:hover[b-r70hhw51wl] {
    color: var(--text-primary);
    background: rgba(255,255,255,0.05);
}

.mkt-modal-body[b-r70hhw51wl] {
    padding: 1.5rem 1.75rem;
    flex: 1;
}

.mkt-modal-item-row[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--accent-border-sub);
}

.mkt-modal-item-name[b-r70hhw51wl] {
    font-weight: 600;
    color: var(--text-primary);
    font-size: 1rem;
}

.mkt-modal-item-price[b-r70hhw51wl] {
    color: var(--accent-light);
    font-weight: 700;
    font-size: 1rem;
}

.mkt-modal-field[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.mkt-modal-label[b-r70hhw51wl] {
    color: var(--text-secondary);
    font-size: 0.875rem;
    white-space: nowrap;
}

.mkt-modal-input[b-r70hhw51wl] {
    background: var(--bg-page);
    border: 1px solid var(--accent-border);
    color: var(--text-primary);
    border-radius: 8px;
    padding: 0.45rem 0.75rem;
    width: 90px;
    font-size: 0.9rem;
}

.mkt-modal-input:focus[b-r70hhw51wl] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(14,165,233,0.25);
    border-color: var(--accent);
}

.mkt-modal-input-suffix[b-r70hhw51wl] {
    color: var(--text-muted);
    font-size: 0.85rem;
}

.mkt-modal-terms-box[b-r70hhw51wl] {
    background: var(--bg-page);
    border: 1px solid var(--accent-border-sub);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
    max-height: 200px;
    overflow-y: auto;
}

.mkt-modal-terms-label[b-r70hhw51wl] {
    font-size: 0.75rem;
    color: var(--accent);
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 0.75rem;
}

.mkt-modal-terms-content[b-r70hhw51wl] {
    font-size: 0.8rem;
    color: var(--text-secondary);
    line-height: 1.6;
    white-space: pre-wrap;
}

.mkt-modal-agree-row[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    cursor: pointer;
    color: var(--text-secondary);
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
}

.mkt-modal-checkbox[b-r70hhw51wl] {
    accent-color: var(--accent);
    width: 16px;
    height: 16px;
}

.mkt-modal-error[b-r70hhw51wl] {
    background: rgba(239,68,68,0.1);
    border: 1px solid rgba(239,68,68,0.3);
    color: #fca5a5;
    border-radius: 8px;
    padding: 0.6rem 1rem;
    font-size: 0.85rem;
    margin-top: 0.75rem;
}

.mkt-modal-actions[b-r70hhw51wl] {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
    padding: 1rem 1.75rem 1.5rem;
    border-top: 1px solid var(--accent-border-sub);
    flex-wrap: wrap;
}

.mkt-modal-success[b-r70hhw51wl] {
    padding: 2.5rem 1.75rem;
    text-align: center;
    color: var(--text-primary);
}

.mkt-modal-success-icon[b-r70hhw51wl] {
    font-size: 3rem;
    color: var(--success);
    margin-bottom: 1rem;
}

.mkt-modal-success h3[b-r70hhw51wl] {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.mkt-modal-success p[b-r70hhw51wl] {
    color: var(--text-secondary);
    margin-bottom: 0.5rem;
}

.mkt-modal-success-sub[b-r70hhw51wl] {
    font-size: 0.85rem;
    color: var(--text-muted) !important;
    margin-bottom: 1.5rem !important;
}

.mkt-modal-success .mkt-modal-actions[b-r70hhw51wl] {
    border-top: none;
    justify-content: center;
    padding-top: 0;
}

.mkt-spinner-sm[b-r70hhw51wl] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: #fff;
    border-radius: 50%;
    animation: spin-b-r70hhw51wl 0.7s linear infinite;
    margin-right: 0.4rem;
    vertical-align: middle;
}

@keyframes spin-b-r70hhw51wl {
    to { transform: rotate(360deg); }
}

.mkt-tier-table[b-r70hhw51wl] {
    margin: 1rem 0;
    border: 1px solid var(--accent-border-sub);
    border-radius: 8px;
    overflow: hidden;
}

.mkt-tier-header[b-r70hhw51wl] {
    display: flex;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    background: var(--surface-2, #f5f5f5);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-secondary);
}

.mkt-tier-row[b-r70hhw51wl] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.6rem 1rem;
    border-top: 1px solid var(--accent-border-sub);
    transition: background 0.15s;
}

.mkt-tier-row.mkt-tier-active[b-r70hhw51wl] {
    background: color-mix(in srgb, var(--accent) 10%, transparent);
    border-left: 3px solid var(--accent);
}

.mkt-tier-range[b-r70hhw51wl] {
    font-size: 0.9rem;
    color: var(--text-primary);
}

.mkt-tier-price[b-r70hhw51wl] {
    font-size: 0.9rem;
    color: var(--text-primary);
}

.mkt-tier-price em[b-r70hhw51wl] {
    font-style: normal;
    color: var(--text-secondary);
}

.mkt-qty-row[b-r70hhw51wl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.25rem;
}

.mkt-qty-btn[b-r70hhw51wl] {
    width: 1.75rem;
    height: 1.75rem;
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #f5f5f5;
    color: #222;
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s;
    flex-shrink: 0;
}

.mkt-qty-btn:hover[b-r70hhw51wl] {
    background: #e0e0e0;
}

.mkt-qty-input[b-r70hhw51wl] {
    width: 5rem !important;
    text-align: center;
}

.mkt-tier-summary[b-r70hhw51wl] {
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    background: color-mix(in srgb, var(--accent) 8%, transparent);
    font-size: 0.875rem;
    color: var(--text-primary);
}

.mkt-tier-summary-note[b-r70hhw51wl] {
    font-size: 0.8rem;
    color: var(--text-secondary);
    margin-left: 0.25rem;
}

.mkt-tier-summary-quote[b-r70hhw51wl] {
    background: color-mix(in srgb, var(--warning, #ed6c02) 10%, transparent);
    color: var(--warning, #ed6c02);
}

.mkt-tier-warn[b-r70hhw51wl] {
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    background: color-mix(in srgb, var(--error, #d32f2f) 10%, transparent);
    font-size: 0.875rem;
    color: var(--error, #d32f2f);
}
/* /Components/Pages/Portal/Account.razor.rz.scp.css */
.acct-field-label[b-gshqm82qj1] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #94a3b8;
    margin-bottom: 6px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.acct-native-select[b-gshqm82qj1] {
    width: 100%;
    background: #0f172a;
    color: #f1f5f9;
    border: 1px solid rgba(14,165,233,0.25);
    border-radius: 8px;
    padding: 10px 36px 10px 14px;
    font-size: 0.9rem;
    font-family: inherit;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2394a3b8' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    transition: border-color 0.18s, box-shadow 0.18s;
}

.acct-native-select:focus[b-gshqm82qj1] {
    border-color: #0ea5e9;
    box-shadow: 0 0 0 3px rgba(14,165,233,0.15);
}

.acct-native-select option[b-gshqm82qj1] {
    background: #1e293b;
    color: #f1f5f9;
}
/* /Components/Pages/Portal/Agents.razor.rz.scp.css */
.agents-modal-backdrop[b-vqzyhaucol] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9000;
    padding: 1rem;
}

.agents-modal[b-vqzyhaucol] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 14px;
    padding: 2rem;
    width: 100%;
    max-width: 520px;
    box-shadow: 0 24px 48px rgba(0,0,0,0.4);
}

.agents-modal-title[b-vqzyhaucol] {
    margin: 0 0 6px 0;
    font-size: 1.2rem;
    font-weight: 700;
    color: #f1f5f9;
    line-height: 1.3;
}

.agents-modal-subtitle[b-vqzyhaucol] {
    margin: 0 0 1.25rem 0;
    font-size: 0.88rem;
    color: #94a3b8;
    line-height: 1.5;
}

.agents-modal-subtitle strong[b-vqzyhaucol] {
    color: #e2e8f0;
    font-weight: 600;
}

.agent-field-label[b-vqzyhaucol] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #94a3b8;
    margin-bottom: 6px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.agent-native-input[b-vqzyhaucol] {
    width: 100%;
    background: #0f172a;
    color: #f1f5f9;
    border: 1px solid rgba(14,165,233,0.25);
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 0.9rem;
    font-family: inherit;
    outline: none;
    transition: border-color 0.18s, box-shadow 0.18s;
}

.agent-native-input:focus[b-vqzyhaucol] {
    border-color: #0ea5e9;
    box-shadow: 0 0 0 3px rgba(14,165,233,0.15);
}

.agent-native-input[b-vqzyhaucol]::placeholder {
    color: #475569;
}

.agents-instance-id[b-vqzyhaucol] {
    font-size: 0.8rem;
    background: var(--bg-surface-alt, #1e293b);
    color: #f1f5f9;
    padding: 2px 8px;
    border-radius: 4px;
    font-family: monospace;
    word-break: break-all;
    text-decoration: none;
}
/* /Components/Pages/Portal/Licenses.razor.rz.scp.css */
.lic-modal-backdrop[b-ve8co0w866] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9000;
    padding: 1rem;
}

.lic-modal[b-ve8co0w866] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 14px;
    padding: 2rem;
    width: 100%;
    max-width: 480px;
    box-shadow: 0 24px 48px rgba(0,0,0,0.4);
}

.lic-modal-title[b-ve8co0w866] {
    margin: 0 0 6px 0;
    font-size: 1.2rem;
    font-weight: 700;
    color: #f1f5f9;
    line-height: 1.3;
}

.lic-modal-subtitle[b-ve8co0w866] {
    margin: 0 0 1.25rem 0;
    font-size: 0.88rem;
    color: #94a3b8;
    line-height: 1.5;
}

.lic-field-label[b-ve8co0w866] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #94a3b8;
    margin-bottom: 6px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.lic-native-select[b-ve8co0w866] {
    width: 100%;
    background: #0f172a;
    color: #f1f5f9;
    border: 1px solid rgba(14,165,233,0.25);
    border-radius: 8px;
    padding: 10px 36px 10px 14px;
    font-size: 0.9rem;
    font-family: inherit;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2394a3b8' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    transition: border-color 0.18s, box-shadow 0.18s;
    margin-bottom: 1rem;
}

.lic-native-select:focus[b-ve8co0w866] {
    border-color: #0ea5e9;
    box-shadow: 0 0 0 3px rgba(14,165,233,0.15);
}

.lic-native-select option[b-ve8co0w866] {
    background: #1e293b;
    color: #f1f5f9;
}

.lic-bundle-tag[b-ve8co0w866] {
    display: inline-flex;
    align-items: center;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 20px;
    border: 1px solid;
    letter-spacing: 0.03em;
    line-height: 1.6;
    white-space: nowrap;
}

.expiry-badge[b-ve8co0w866] {
    display: inline-block;
    font-size: 0.65rem;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 999px;
    letter-spacing: 0.03em;
    line-height: 1.6;
}

.expiry-badge--warning[b-ve8co0w866] {
    background: rgba(245, 158, 11, 0.15);
    color: #f59e0b;
    border: 1px solid rgba(245, 158, 11, 0.3);
}

.expiry-badge--danger[b-ve8co0w866] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.3);
}
/* /Components/Pages/Portal/Orders.razor.rz.scp.css */
.orders-modal-backdrop[b-ypsm38mism] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9000;
    padding: 1rem;
}

.orders-confirm-modal[b-ypsm38mism] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 14px;
    padding: 2rem;
    width: 100%;
    max-width: 420px;
    box-shadow: 0 24px 48px rgba(0,0,0,0.4);
}

.orders-pkg-toggle[b-ypsm38mism] {
    background: none;
    border: none;
    padding: 0 0 0 6px;
    cursor: pointer;
    color: var(--mud-palette-text-secondary);
    vertical-align: middle;
    font-size: 0.8rem;
    line-height: 1;
}

.orders-pkg-toggle:hover[b-ypsm38mism] {
    color: var(--mud-palette-primary);
}

.orders-pkg-row td[b-ypsm38mism] {
    padding-top: 0 !important;
    padding-bottom: 0.5rem !important;
    border-top: none !important;
}

.orders-pkg-items[b-ypsm38mism] {
    list-style: none;
    margin: 0;
    padding: 0 0 0 1.5rem;
    font-size: 0.82rem;
    color: var(--mud-palette-text-secondary);
}

.orders-pkg-items li[b-ypsm38mism] {
    padding: 2px 0;
}
/* /Components/Pages/Portal/Scopes.razor.rz.scp.css */
.scopes-modal-backdrop[b-rgvint6in7] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9000;
    padding: 1rem;
}

.scopes-modal-title[b-rgvint6in7] {
    margin: 0 0 6px 0;
    font-size: 1.2rem;
    font-weight: 700;
    color: #f1f5f9;
    line-height: 1.3;
}

.scopes-modal-subtitle[b-rgvint6in7] {
    margin: 0 0 1.25rem 0;
    font-size: 0.88rem;
    color: #94a3b8;
    line-height: 1.5;
}

.scopes-modal-subtitle strong[b-rgvint6in7] {
    color: #e2e8f0;
    font-weight: 600;
}

.scope-field-label[b-rgvint6in7] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #94a3b8;
    margin-bottom: 6px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.scope-native-select[b-rgvint6in7],
.scope-native-input[b-rgvint6in7] {
    width: 100%;
    background: #0f172a;
    color: #f1f5f9;
    border: 1px solid rgba(14,165,233,0.25);
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 0.9rem;
    font-family: inherit;
    outline: none;
    transition: border-color 0.18s, box-shadow 0.18s;
}

.scope-native-select[b-rgvint6in7] {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2394a3b8' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 36px;
}

.scope-native-select:focus[b-rgvint6in7],
.scope-native-input:focus[b-rgvint6in7] {
    border-color: #0ea5e9;
    box-shadow: 0 0 0 3px rgba(14,165,233,0.15);
}

.scope-native-select option[b-rgvint6in7] {
    background: #1e293b;
    color: #f1f5f9;
}

.scope-native-input[b-rgvint6in7]::placeholder {
    color: #475569;
}

.scopes-modal[b-rgvint6in7] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 14px;
    padding: 2rem;
    width: 100%;
    max-width: 480px;
    box-shadow: 0 24px 48px rgba(0,0,0,0.4);
}
/* /Components/Pages/Portal/Support.razor.rz.scp.css */
/* Styles handled by MudBlazor components and app.css overrides */
/* /Components/Pages/Pricing.razor.rz.scp.css */
.pricing-page[b-gcwgev85l3] {
    background: var(--bg-page);
    min-height: 100vh;
    padding-top: calc(var(--nav-height) + 2rem);
}

/* ─── Billing toggle ─────────────────────────────────────────── */
.pricing-page .pricing-toggle[b-gcwgev85l3] {
    display: inline-flex;
    align-items: center;
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 999px;
    padding: 0.25rem;
    gap: 0.25rem;
}

.pricing-page .pricing-toggle-option[b-gcwgev85l3] {
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 1.1rem;
    border-radius: 999px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: color 0.18s, background 0.18s;
    user-select: none;
}

.pricing-page .pricing-toggle-option:hover[b-gcwgev85l3] {
    color: var(--text-primary);
}

.pricing-page .pricing-toggle-active[b-gcwgev85l3] {
    background: var(--accent-gradient);
    color: #fff;
    font-weight: 600;
}

.pricing-page .pricing-badge-save[b-gcwgev85l3] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    background: rgba(14, 165, 233, 0.18);
    color: var(--accent-light);
    border: 1px solid var(--accent-border);
    vertical-align: middle;
}

.pricing-page .pricing-toggle-active .pricing-badge-save[b-gcwgev85l3] {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.3);
}

/* ─── Pricing cards ──────────────────────────────────────────── */
.pricing-page .pricing-card[b-gcwgev85l3] {
    background: var(--bg-surface);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: var(--text-primary);
    border-radius: 16px;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
    overflow: hidden;
}

.pricing-page .pricing-card:hover[b-gcwgev85l3] {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.3);
    border-color: rgba(255, 255, 255, 0.15);
}

.pricing-page .pricing-card-featured[b-gcwgev85l3] {
    box-shadow: 0 0 0 2px var(--accent), 0 0 40px rgba(14, 165, 233, 0.15) !important;
    border-color: var(--accent) !important;
}

.pricing-page .pricing-card-featured:hover[b-gcwgev85l3] {
    box-shadow: 0 0 0 2px var(--accent), 0 0 60px rgba(14, 165, 233, 0.25) !important;
    transform: translateY(-4px);
}

.pricing-page .pricing-ribbon[b-gcwgev85l3] {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 0.3rem 0.85rem;
    border-radius: 999px;
    background: var(--accent-gradient);
    color: #fff;
    margin-bottom: 0.75rem;
}

.pricing-page .pricing-price[b-gcwgev85l3] {
    color: var(--text-primary);
}

.pricing-page .pricing-check[b-gcwgev85l3] {
    color: var(--accent);
    font-size: 1rem;
    margin-top: 0.1rem;
}

/* ─── Subscribe / contact buttons ───────────────────────────── */
.pricing-page .btn-primary-accent[b-gcwgev85l3] {
    background: var(--accent-gradient);
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 0.55rem 1.25rem;
    font-weight: 600;
    box-shadow: 0 4px 14px rgba(14, 165, 233, 0.3);
    transition: opacity 0.18s, transform 0.18s;
}

.pricing-page .btn-primary-accent:hover[b-gcwgev85l3] {
    opacity: 0.9;
    transform: translateY(-1px);
    color: #fff;
}

.pricing-page .btn-outline-accent[b-gcwgev85l3] {
    background: transparent;
    color: var(--accent-light);
    border: 1px solid var(--accent-border);
    border-radius: 8px;
    padding: 0.55rem 1.25rem;
    font-weight: 600;
    transition: background 0.18s, border-color 0.18s, color 0.18s;
}

.pricing-page .btn-outline-accent:hover[b-gcwgev85l3] {
    background: var(--accent-fill-dim);
    border-color: var(--accent);
    color: var(--accent-light);
}

/* ─── Coverage CTA inside card ───────────────────────────────── */
.pricing-page .pricing-checks-cta[b-gcwgev85l3] {
    display: block;
    width: 100%;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    border-radius: 0.75rem;
    text-align: left;
}

.pricing-page .pricing-checks-cta:focus-visible[b-gcwgev85l3] {
    outline: none;
}

.pricing-page .pricing-checks-cta:focus-visible .pricing-checks-cta-inner[b-gcwgev85l3] {
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.35);
}

.pricing-page .pricing-checks-cta-inner[b-gcwgev85l3] {
    border-radius: 0.75rem;
    padding: 0.85rem 1rem;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.06) 0%, rgba(99, 102, 241, 0.08) 100%);
    border: 1px solid var(--accent-border);
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.pricing-page .pricing-checks-cta:hover .pricing-checks-cta-inner[b-gcwgev85l3] {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(14, 165, 233, 0.15);
    border-color: var(--accent);
}

.pricing-page .pricing-checks-cta-icon[b-gcwgev85l3] {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.65rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    color: var(--accent);
    font-size: 1.35rem;
    flex-shrink: 0;
}

.pricing-page .pricing-checks-cta-title[b-gcwgev85l3] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--text-primary);
    letter-spacing: -0.01em;
}

.pricing-page .pricing-checks-cta-meta[b-gcwgev85l3] {
    font-size: 0.78rem;
    color: var(--text-muted);
    margin-top: 0.15rem;
}

.pricing-page .pricing-checks-cta-arrow[b-gcwgev85l3] {
    color: var(--accent);
    font-size: 1.5rem;
    line-height: 1;
    opacity: 0.9;
    transition: transform 0.18s ease;
    flex-shrink: 0;
}

.pricing-page .pricing-checks-cta:hover .pricing-checks-cta-arrow[b-gcwgev85l3] {
    transform: translateX(4px);
}

/* ─── Summary card ───────────────────────────────────────────── */
.pricing-page .pricing-summary-card[b-gcwgev85l3] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-radius: 16px;
    position: relative;
    overflow: hidden;
}

.pricing-page .pricing-summary-card[b-gcwgev85l3]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--accent-gradient);
    opacity: 0.7;
}

/* ─── Modal shell ────────────────────────────────────────────── */
.pricing-page .pricing-checks-modal[b-gcwgev85l3] {
    position: fixed;
    inset: 0;
    z-index: 1055;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    animation: pricing-modal-root-in-b-gcwgev85l3 0.28s ease forwards;
}

@keyframes pricing-modal-root-in-b-gcwgev85l3 {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.pricing-page .pricing-checks-modal-backdrop[b-gcwgev85l3] {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.pricing-page .pricing-checks-modal-animate .pricing-checks-modal-panel[b-gcwgev85l3] {
    animation: pricing-modal-panel-in-b-gcwgev85l3 0.32s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes pricing-modal-panel-in-b-gcwgev85l3 {
    from {
        opacity: 0;
        transform: translateY(16px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.pricing-page .pricing-checks-modal-panel[b-gcwgev85l3] {
    position: relative;
    z-index: 1;
    width: min(44rem, 100%);
    max-height: min(90vh, 46rem);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 1rem;
    background: linear-gradient(145deg, #1e293b 0%, #0f172a 100%);
    border: 1px solid var(--accent-border);
    box-shadow: 0 1.25rem 3rem rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(14, 165, 233, 0.08) inset;
}

/* ─── Modal header ───────────────────────────────────────────── */
.pricing-page .pricing-checks-modal-header[b-gcwgev85l3] {
    flex-shrink: 0;
    padding: 1.35rem 1.35rem 1.15rem;
    background: linear-gradient(155deg, #0f172a 0%, #1e293b 55%, #0f2238 100%);
    border-bottom: 1px solid var(--accent-border);
    position: relative;
}

.pricing-page .pricing-checks-modal-header[b-gcwgev85l3]::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--accent), rgba(14, 165, 233, 0.15));
}

.pricing-page .pricing-checks-modal-hero-icon[b-gcwgev85l3] {
    width: 3rem;
    height: 3rem;
    border-radius: 0.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    color: var(--accent);
    font-size: 1.5rem;
    flex-shrink: 0;
}

.pricing-page .pricing-checks-modal-eyebrow[b-gcwgev85l3] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: 600;
    color: var(--accent);
}

.pricing-page .pricing-checks-modal-title[b-gcwgev85l3] {
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--text-primary);
}

.pricing-page .pricing-checks-modal-sub[b-gcwgev85l3] {
    font-size: 0.88rem;
    line-height: 1.45;
    color: var(--text-secondary);
}

.pricing-page .pricing-checks-modal-close[b-gcwgev85l3] {
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 0.5rem;
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-secondary);
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.pricing-page .pricing-checks-modal-close:hover[b-gcwgev85l3] {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.35);
    color: var(--text-primary);
}

.pricing-page .pricing-checks-modal-statrow[b-gcwgev85l3] {
    position: relative;
    z-index: 1;
}

.pricing-page .pricing-checks-stat-pill[b-gcwgev85l3] {
    display: inline-flex;
    align-items: center;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.28rem 0.65rem;
    border-radius: 999px;
    background: rgba(14, 165, 233, 0.15);
    color: var(--accent-light);
    border: 1px solid var(--accent-border);
}

.pricing-page .pricing-checks-stat-pill-muted[b-gcwgev85l3] {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.12);
    color: var(--text-secondary);
    font-weight: 500;
}

.pricing-page .pricing-checks-stat-pill-accent[b-gcwgev85l3] {
    background: var(--accent);
    color: #0a0f1a;
    border-color: transparent;
    font-weight: 700;
}

/* ─── Toolbar + search ───────────────────────────────────────── */
.pricing-page .pricing-checks-modal-toolbar[b-gcwgev85l3] {
    flex-shrink: 0;
    padding: 1rem 1.35rem;
    background: var(--bg-surface);
    border-bottom: 1px solid var(--accent-border-sub);
}

.pricing-page .pricing-checks-search[b-gcwgev85l3] {
    position: relative;
    display: block;
}

.pricing-page .pricing-checks-search-icon[b-gcwgev85l3] {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    font-size: 1rem;
    pointer-events: none;
}

.pricing-page .pricing-checks-search-input[b-gcwgev85l3] {
    display: block;
    width: 100%;
    padding: 0.65rem 1rem 0.65rem 2.65rem;
    font-size: 0.9rem;
    border: 1px solid var(--accent-border);
    border-radius: 999px;
    background: var(--bg-surface-raised);
    color: var(--text-primary);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pricing-page .pricing-checks-search-input:focus[b-gcwgev85l3] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.2);
}

.pricing-page .pricing-checks-search-input[b-gcwgev85l3]::placeholder {
    color: var(--text-muted);
}

/* ─── Modal body / check list ────────────────────────────────── */
.pricing-page .pricing-checks-modal-body[b-gcwgev85l3] {
    overflow-y: auto;
    flex: 1 1 auto;
    min-height: 0;
    padding: 1.25rem 1.35rem 1.5rem;
    background: linear-gradient(145deg, #1e293b 0%, #0f172a 100%);
}

.pricing-page .pricing-checks-modal-body[b-gcwgev85l3]::-webkit-scrollbar {
    width: 6px;
}

.pricing-page .pricing-checks-modal-body[b-gcwgev85l3]::-webkit-scrollbar-track {
    background: transparent;
}

.pricing-page .pricing-checks-modal-body[b-gcwgev85l3]::-webkit-scrollbar-thumb {
    background: var(--accent-border);
    border-radius: 3px;
}

.pricing-page .pricing-check-category[b-gcwgev85l3] {
    margin-bottom: 1.75rem;
    padding: 1.1rem 1.15rem;
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--accent-border-sub);
}

.pricing-page .pricing-check-category:last-child[b-gcwgev85l3] {
    margin-bottom: 0;
}

.pricing-page .pricing-check-category-dot[b-gcwgev85l3] {
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.2);
    flex-shrink: 0;
}

.pricing-page .pricing-check-category-head h3[b-gcwgev85l3] {
    color: var(--text-primary);
}

.pricing-page .pricing-check-category-badge[b-gcwgev85l3] {
    margin-left: auto;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    background: var(--accent-fill-dim);
    color: var(--accent-light);
    border: 1px solid var(--accent-border);
}

.pricing-page .pricing-check-category-head[b-gcwgev85l3] {
    flex-wrap: wrap;
}

.pricing-page .pricing-check-lines[b-gcwgev85l3] {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.pricing-page .pricing-check-line[b-gcwgev85l3] {
    font-size: 0.84rem;
    line-height: 1.45;
    color: var(--text-secondary);
}

.pricing-page .pricing-check-line-icon[b-gcwgev85l3] {
    font-size: 0.95rem;
    color: var(--accent);
    margin-top: 0.15rem;
}

.pricing-page .pricing-check-line-text[b-gcwgev85l3] {
    flex: 1;
    min-width: 0;
}

.pricing-page .pricing-checks-empty-icon[b-gcwgev85l3] {
    display: inline-flex;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    color: var(--accent);
    font-size: 1.35rem;
}

.pricing-page .pricing-checks-empty p:first-of-type[b-gcwgev85l3] {
    color: var(--text-primary);
}

/* ─── Per-subscription note ──────────────────────────────── */
.pricing-page .pricing-per-sub-note[b-gcwgev85l3] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--accent-light);
    letter-spacing: 0.02em;
}

/* ─── AI Add-on card ─────────────────────────────────────── */
.pricing-page .pricing-addon-card[b-gcwgev85l3] {
    background: linear-gradient(145deg, #0f172a 0%, #0a0f1a 100%);
    border: 1px solid var(--accent-border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 0 0 1px rgba(14, 165, 233, 0.08), 0 0 40px rgba(14, 165, 233, 0.06);
}

.pricing-page .pricing-addon-header[b-gcwgev85l3] {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
    padding: 1.75rem 2rem 1.25rem;
    border-bottom: 1px solid var(--accent-border-sub);
    flex-wrap: wrap;
}

.pricing-page .pricing-addon-icon[b-gcwgev85l3] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 10px;
    background: var(--accent-fill-dim);
    border: 1px solid var(--accent-border);
    color: var(--accent);
    font-size: 1.4rem;
    flex-shrink: 0;
}

.pricing-page .pricing-addon-features[b-gcwgev85l3] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1.5rem;
    padding: 1.5rem 2rem;
}

.pricing-page .pricing-addon-feature[b-gcwgev85l3] {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
}

.pricing-page .pricing-addon-feature-icon[b-gcwgev85l3] {
    font-size: 1.1rem;
    color: var(--accent);
    margin-top: 0.1rem;
    flex-shrink: 0;
}

.pricing-page .pricing-addon-footer[b-gcwgev85l3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    padding: 1.25rem 2rem 1.75rem;
    border-top: 1px solid var(--accent-border-sub);
}
/* /Components/Pages/Privacy.razor.rz.scp.css */
.page-container[b-ibfg4xa0n0] { max-width: 720px; margin: auto; padding: 4rem 1.5rem; }
h1[b-ibfg4xa0n0], h2[b-ibfg4xa0n0] { color: var(--text-primary); }
p[b-ibfg4xa0n0], li[b-ibfg4xa0n0] { color: var(--text-secondary); }
a[b-ibfg4xa0n0] { color: var(--accent); }
/* /Components/Pages/Register.razor.rz.scp.css */
.page-container[b-lwy8iyeznb] { max-width: 720px; margin: auto; padding: 4rem 1.5rem; }
h1[b-lwy8iyeznb], h2[b-lwy8iyeznb] { color: var(--text-primary); }
p[b-lwy8iyeznb], li[b-lwy8iyeznb] { color: var(--text-secondary); }
a[b-lwy8iyeznb] { color: var(--accent); }

.register-card[b-lwy8iyeznb] {
    background: rgba(30, 41, 59, 0.7);
    backdrop-filter: blur(12px);
    border: 1px solid var(--accent-border);
    border-radius: 16px;
    box-shadow: 0 32px 64px rgba(0, 0, 0, 0.4);
}

.form-control[b-lwy8iyeznb] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--accent-border);
}

.form-control:focus[b-lwy8iyeznb] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.25);
}

.form-label[b-lwy8iyeznb] {
    color: var(--text-secondary);
}

.password-toggle[b-lwy8iyeznb] {
    background: var(--bg-surface);
    border: 1px solid var(--accent-border);
    border-left: none;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    padding: 0 0.75rem;
    transition: color 0.2s ease, border-color 0.2s ease;
}

.password-toggle:hover[b-lwy8iyeznb] {
    color: var(--accent);
    border-color: var(--accent-border);
}

.password-toggle:focus[b-lwy8iyeznb] {
    box-shadow: none;
    border-color: var(--accent);
    color: var(--accent);
}

[b-lwy8iyeznb] .input-group .form-control:focus ~ .password-toggle {
    border-color: var(--accent);
}
/* /Components/Pages/Security.razor.rz.scp.css */
.page-container[b-5g72d991mq] { max-width: 720px; margin: auto; padding: 4rem 1.5rem; }
h1[b-5g72d991mq], h2[b-5g72d991mq] { color: var(--text-primary); }
p[b-5g72d991mq], li[b-5g72d991mq] { color: var(--text-secondary); }
a[b-5g72d991mq] { color: var(--accent); }
/* /Components/Pages/Terms.razor.rz.scp.css */
.page-container[b-zifo8tok07] { max-width: 720px; margin: auto; padding: 4rem 1.5rem; }
h1[b-zifo8tok07], h2[b-zifo8tok07] { color: var(--text-primary); }
p[b-zifo8tok07], li[b-zifo8tok07] { color: var(--text-secondary); }
a[b-zifo8tok07] { color: var(--accent); }
/* /Components/Shared/HelpTooltip.razor.rz.scp.css */
.help-tooltip-wrap[b-bdc8jl1cod] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.help-tooltip-trigger[b-bdc8jl1cod] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 0.85rem;
    cursor: pointer;
    border-radius: 50%;
    transition: color 0.15s ease, background 0.15s ease;
    line-height: 1;
}

.help-tooltip-trigger:hover[b-bdc8jl1cod] {
    color: #0ea5e9;
    background: rgba(14, 165, 233, 0.08);
}

.help-tooltip-panel[b-bdc8jl1cod] {
    position: absolute;
    z-index: 9999;
    min-width: 240px;
    max-width: 320px;
    background: #1e293b;
    border: 1px solid rgba(14, 165, 233, 0.25);
    border-radius: 10px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(14, 165, 233, 0.08);
    padding: 14px 16px;
    pointer-events: none;
    opacity: 0;
    transform: translateY(4px) scale(0.97);
    transition: opacity 0.15s ease, transform 0.15s ease;
}

.help-tooltip-wrap:hover .help-tooltip-panel[b-bdc8jl1cod],
.help-tooltip-wrap:focus-within .help-tooltip-panel[b-bdc8jl1cod] {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

/* Position variants */
.help-tooltip-panel--top[b-bdc8jl1cod] {
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%) translateY(4px) scale(0.97);
}

.help-tooltip-wrap:hover .help-tooltip-panel--top[b-bdc8jl1cod],
.help-tooltip-wrap:focus-within .help-tooltip-panel--top[b-bdc8jl1cod] {
    transform: translateX(-50%) translateY(0) scale(1);
}

.help-tooltip-panel--bottom[b-bdc8jl1cod] {
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%) translateY(-4px) scale(0.97);
}

.help-tooltip-wrap:hover .help-tooltip-panel--bottom[b-bdc8jl1cod],
.help-tooltip-wrap:focus-within .help-tooltip-panel--bottom[b-bdc8jl1cod] {
    transform: translateX(-50%) translateY(0) scale(1);
}

.help-tooltip-panel--left[b-bdc8jl1cod] {
    right: calc(100% + 8px);
    top: 50%;
    transform: translateY(-50%) translateX(4px) scale(0.97);
}

.help-tooltip-wrap:hover .help-tooltip-panel--left[b-bdc8jl1cod],
.help-tooltip-wrap:focus-within .help-tooltip-panel--left[b-bdc8jl1cod] {
    transform: translateY(-50%) translateX(0) scale(1);
}

.help-tooltip-panel--right[b-bdc8jl1cod] {
    left: calc(100% + 8px);
    top: 50%;
    transform: translateY(-50%) translateX(-4px) scale(0.97);
}

.help-tooltip-wrap:hover .help-tooltip-panel--right[b-bdc8jl1cod],
.help-tooltip-wrap:focus-within .help-tooltip-panel--right[b-bdc8jl1cod] {
    transform: translateY(-50%) translateX(0) scale(1);
}

/* Content typography in huisstijl */
.help-tooltip-content[b-bdc8jl1cod] {
    font-size: 0.82rem;
    line-height: 1.55;
    color: #cbd5e1;
}

.help-tooltip-content strong[b-bdc8jl1cod] {
    color: #f1f5f9;
    font-weight: 600;
}

.help-tooltip-content .help-tooltip-label[b-bdc8jl1cod] {
    display: block;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #64748b;
    margin-bottom: 2px;
}

.help-tooltip-content .help-tooltip-value[b-bdc8jl1cod] {
    display: block;
    color: #f1f5f9;
    font-weight: 500;
    margin-bottom: 10px;
}

.help-tooltip-content .help-tooltip-value:last-child[b-bdc8jl1cod] {
    margin-bottom: 0;
}

.help-tooltip-content .help-tooltip-divider[b-bdc8jl1cod] {
    border: none;
    border-top: 1px solid rgba(14, 165, 233, 0.12);
    margin: 10px 0;
}

.help-tooltip-content .help-tooltip-hint[b-bdc8jl1cod] {
    display: block;
    font-size: 0.75rem;
    color: #64748b;
    margin-top: 2px;
}

/* State colours */
.help-tooltip-content .help-tooltip-success[b-bdc8jl1cod] { color: #10b981; }
.help-tooltip-content .help-tooltip-warning[b-bdc8jl1cod] { color: #f59e0b; }
.help-tooltip-content .help-tooltip-danger[b-bdc8jl1cod]  { color: #ef4444; }
/* /Components/UI/Tutorial/TutorialOverlay.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════
   TutorialOverlay — CloudSpector Portal brand-aligned tutorial UI
   (mirrors CloudSpector.Agent's TutorialOverlay for brand consistency)
   ══════════════════════════════════════════════════════════ */

/* ── Dark fog — covers main content only, nav stays clear ── */
.tut-bg[b-ehc61lvfjq] {
    position: fixed;
    inset: 0;
    z-index: 9990;
    background: rgba(15, 23, 42, 0.78);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    animation: tutOverlayFadeIn-b-ehc61lvfjq 280ms ease-out both;
    cursor: pointer;
}

/* ── Modal wrapper — full viewport, pointer-events pass-through ── */
.tut-modal-wrap[b-ehc61lvfjq] {
    position: fixed;
    inset: 0;
    z-index: 9992;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 24px;
    pointer-events: none;
    overflow-y: auto;
}

@keyframes tutOverlayFadeIn-b-ehc61lvfjq {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* ── Modal card ────────────────────────────────────────── */
.tut-modal[b-ehc61lvfjq] {
    position: relative;
    width: 100%;
    max-width: 640px;
    max-height: calc(100vh - 40px);
    pointer-events: all;
    background: linear-gradient(145deg, #1e293b 0%, #0f172a 100%);
    border: 1px solid rgba(14, 165, 233, 0.2);
    border-radius: 16px;
    box-shadow:
        0 0 0 1px rgba(14, 165, 233, 0.08),
        0 32px 64px rgba(0, 0, 0, 0.55),
        0 0 80px rgba(14, 165, 233, 0.06);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    animation: tutModalScaleIn-b-ehc61lvfjq 320ms cubic-bezier(0.34, 1.56, 0.64, 1) both;
    flex-shrink: 0;
}

@keyframes tutModalScaleIn-b-ehc61lvfjq {
    from {
        opacity: 0;
        transform: scale(0.92) translateY(12px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* ── Progress bar ──────────────────────────────────────── */
.tut-progress-track[b-ehc61lvfjq] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: rgba(255, 255, 255, 0.06);
    z-index: 2;
}

.tut-progress-fill[b-ehc61lvfjq] {
    height: 100%;
    background: linear-gradient(90deg, #0ea5e9 0%, #38bdf8 50%, #7dd3fc 100%);
    border-radius: 0 2px 2px 0;
    transition: width 420ms cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 0 8px rgba(14, 165, 233, 0.6);
    min-width: 4px;
}

/* ── Header row ────────────────────────────────────────── */
.tut-header[b-ehc61lvfjq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 24px 0;
    margin-top: 4px;
    flex-shrink: 0;
}

.tut-step-badge[b-ehc61lvfjq] {
    display: flex;
    align-items: center;
    gap: 7px;
    background: rgba(14, 165, 233, 0.1);
    border: 1px solid rgba(14, 165, 233, 0.25);
    border-radius: 20px;
    padding: 4px 12px 4px 9px;
}

.tut-step-icon[b-ehc61lvfjq] {
    color: #0ea5e9;
    font-size: 0.65rem;
    line-height: 1;
    animation: tutIconPulse-b-ehc61lvfjq 2.4s ease-in-out infinite;
}

@keyframes tutIconPulse-b-ehc61lvfjq {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%       { opacity: 0.6; transform: scale(0.85); }
}

.tut-step-label[b-ehc61lvfjq] {
    font-size: 0.72rem;
    font-weight: 600;
    color: #38bdf8;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.tut-close-btn[b-ehc61lvfjq] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.05);
    color: #94a3b8;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
    padding: 0;
    flex-shrink: 0;
}

.tut-close-btn:hover[b-ehc61lvfjq] {
    background: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.4);
    color: #f87171;
}

/* ── Content area ──────────────────────────────────────── */
.tut-content-area[b-ehc61lvfjq] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 32px 12px;
    min-height: 0;
    gap: 0;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(14,165,233,0.2) transparent;
}

.tut-content-area[b-ehc61lvfjq]::-webkit-scrollbar {
    width: 3px;
}

.tut-content-area[b-ehc61lvfjq]::-webkit-scrollbar-track {
    background: transparent;
}

.tut-content-area[b-ehc61lvfjq]::-webkit-scrollbar-thumb {
    background: rgba(14,165,233,0.25);
    border-radius: 4px;
}

/* ── Icon badge (replaces Agent's SVG hero illustration) ── */
.tut-icon-badge[b-ehc61lvfjq] {
    width: 88px;
    height: 88px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at 35% 30%, rgba(14, 165, 233, 0.22), rgba(14, 165, 233, 0.06));
    border: 1px solid rgba(14, 165, 233, 0.3);
    box-shadow: 0 0 32px rgba(14, 165, 233, 0.18);
    margin-bottom: 18px;
    flex-shrink: 0;
}

[b-ehc61lvfjq] .tut-icon-badge svg {
    width: 40px;
    height: 40px;
    color: #38bdf8;
    filter: drop-shadow(0 0 6px rgba(56, 189, 248, 0.5));
}

/* ── Body: title + description ─────────────────────────── */
.tutorial-body[b-ehc61lvfjq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
    flex: 1;
}

.tutorial-title[b-ehc61lvfjq] {
    margin: 0;
    font-size: 1.3rem;
    font-weight: 700;
    color: #f1f5f9;
    letter-spacing: -0.01em;
    line-height: 1.25;
}

.tutorial-desc[b-ehc61lvfjq] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.65;
    color: #94a3b8;
    max-width: 460px;
}

/* ── Footer ────────────────────────────────────────────── */
.tut-footer[b-ehc61lvfjq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 24px 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    gap: 12px;
    flex-shrink: 0;
}

/* ── Dot indicators ────────────────────────────────────── */
.tut-dots[b-ehc61lvfjq] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1;
    justify-content: center;
}

.tut-dot[b-ehc61lvfjq] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, 0.2);
    cursor: pointer;
    padding: 0;
    transition: background 200ms ease, transform 200ms ease, width 300ms cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
}

.tut-dot:hover:not(:disabled)[b-ehc61lvfjq] {
    background: rgba(14, 165, 233, 0.5);
    transform: scale(1.2);
}

.tut-dot:disabled[b-ehc61lvfjq] {
    cursor: default;
}

.tut-dot-active[b-ehc61lvfjq] {
    background: #0ea5e9 !important;
    width: 24px !important;
    border-radius: 4px !important;
    box-shadow: 0 0 8px rgba(14, 165, 233, 0.55);
}

/* ── Navigation buttons ────────────────────────────────── */
.tut-btn[b-ehc61lvfjq] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 160ms ease, transform 120ms ease, opacity 160ms ease;
    padding: 8px 16px;
    white-space: nowrap;
    flex-shrink: 0;
    min-width: 100px;
    justify-content: center;
    border: none;
}

.tut-btn:disabled[b-ehc61lvfjq] {
    opacity: 0.35;
    cursor: default;
    transform: none !important;
}

.tut-btn-prev[b-ehc61lvfjq] {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #94a3b8;
}

.tut-btn-prev:hover:not(:disabled)[b-ehc61lvfjq] {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.22);
    color: #e2e8f0;
    transform: translateX(-2px);
}

.tut-btn-next[b-ehc61lvfjq] {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    border: 1px solid rgba(14, 165, 233, 0.4);
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(14, 165, 233, 0.3);
}

.tut-btn-next:hover:not(:disabled)[b-ehc61lvfjq] {
    background: linear-gradient(135deg, #38bdf8 0%, #0ea5e9 100%);
    box-shadow: 0 6px 20px rgba(14, 165, 233, 0.45);
    transform: translateX(2px);
}

.tut-btn-finish[b-ehc61lvfjq] {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    border-color: rgba(16, 185, 129, 0.4) !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.3) !important;
}

.tut-btn-finish:hover:not(:disabled)[b-ehc61lvfjq] {
    background: linear-gradient(135deg, #34d399 0%, #10b981 100%) !important;
    box-shadow: 0 6px 20px rgba(16, 185, 129, 0.45) !important;
    transform: none !important;
}

/* ── Step-entering animation class (set by .razor.cs) ──── */
.tut-step-entering .tut-icon-badge[b-ehc61lvfjq] {
    animation: tutMediaSlideUp-b-ehc61lvfjq 420ms ease-out both;
}

.tut-step-entering .tutorial-title[b-ehc61lvfjq] {
    animation: tutTitleFadeUp-b-ehc61lvfjq 360ms ease-out 80ms both;
}

.tut-step-entering .tutorial-desc[b-ehc61lvfjq] {
    animation: tutBodyFadeUp-b-ehc61lvfjq 360ms ease-out 160ms both;
}

.tut-step-entering .tut-footer[b-ehc61lvfjq] {
    animation: tutFooterFadeIn-b-ehc61lvfjq 300ms ease-out 240ms both;
}

/* ── Step-exiting animation class (set by .razor.cs) ────── */
.tut-step-exiting .tut-icon-badge[b-ehc61lvfjq] {
    animation: tutMediaSlideOut-b-ehc61lvfjq 120ms ease-in both;
}

.tut-step-exiting .tutorial-title[b-ehc61lvfjq] {
    animation: tutContentFadeOut-b-ehc61lvfjq 100ms ease-in 20ms both;
}

.tut-step-exiting .tutorial-desc[b-ehc61lvfjq] {
    animation: tutContentFadeOut-b-ehc61lvfjq 100ms ease-in 10ms both;
}

.tut-step-exiting .tut-footer[b-ehc61lvfjq] {
    animation: tutFooterFadeOut-b-ehc61lvfjq 80ms ease-in both;
}

/* ── Entrance keyframes ─────────────────────────────────── */
@keyframes tutMediaSlideUp-b-ehc61lvfjq {
    from { opacity: 0; transform: translateY(40px) scale(0.97); }
    to   { opacity: 1; transform: translateY(0)    scale(1); }
}

@keyframes tutTitleFadeUp-b-ehc61lvfjq {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes tutBodyFadeUp-b-ehc61lvfjq {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes tutFooterFadeIn-b-ehc61lvfjq {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Exit keyframes ─────────────────────────────────────── */
@keyframes tutMediaSlideOut-b-ehc61lvfjq {
    from { opacity: 1; transform: translateY(0)     scale(1); }
    to   { opacity: 0; transform: translateY(-16px) scale(0.97); }
}

@keyframes tutContentFadeOut-b-ehc61lvfjq {
    from { opacity: 1; transform: translateY(0); }
    to   { opacity: 0; transform: translateY(-10px); }
}

@keyframes tutFooterFadeOut-b-ehc61lvfjq {
    from { opacity: 1; }
    to   { opacity: 0; }
}

/* ── Feature bullet list ───────────────────────────────── */
.tut-features[b-ehc61lvfjq] {
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
    max-width: 460px;
}

.tut-feature-item[b-ehc61lvfjq] {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 0.84rem;
    color: #cbd5e1;
    line-height: 1.4;
    padding: 5px 10px;
    border-radius: 6px;
    background: rgba(14, 165, 233, 0.05);
    border: 1px solid rgba(14, 165, 233, 0.1);
    transition: background 160ms ease;
    text-align: left;
}

.tut-feature-item:hover[b-ehc61lvfjq] {
    background: rgba(14, 165, 233, 0.09);
}

.tut-feat-icon[b-ehc61lvfjq] {
    color: #0ea5e9;
    flex-shrink: 0;
    filter: drop-shadow(0 0 3px rgba(14, 165, 233, 0.6));
}

.tut-step-entering .tut-feature-item:nth-child(1)[b-ehc61lvfjq] { animation: tutBodyFadeUp-b-ehc61lvfjq 300ms ease-out 180ms both; }
.tut-step-entering .tut-feature-item:nth-child(2)[b-ehc61lvfjq] { animation: tutBodyFadeUp-b-ehc61lvfjq 300ms ease-out 240ms both; }
.tut-step-entering .tut-feature-item:nth-child(3)[b-ehc61lvfjq] { animation: tutBodyFadeUp-b-ehc61lvfjq 300ms ease-out 300ms both; }
.tut-step-entering .tut-feature-item:nth-child(4)[b-ehc61lvfjq] { animation: tutBodyFadeUp-b-ehc61lvfjq 300ms ease-out 360ms both; }

/* ── Hidden Previous (step 1) ──────────────────────────── */
.tut-btn-hidden[b-ehc61lvfjq] {
    opacity: 0 !important;
    pointer-events: none;
}

/* ── Skip row ──────────────────────────────────────────── */
.tut-skip-row[b-ehc61lvfjq] {
    display: flex;
    justify-content: center;
    padding: 0 24px 16px;
}

.tut-skip-link[b-ehc61lvfjq] {
    background: none;
    border: none;
    color: #475569;
    font-size: 0.8rem;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: color 160ms ease;
    font-family: inherit;
}

.tut-skip-link:hover:not(:disabled)[b-ehc61lvfjq] {
    color: #94a3b8;
    text-decoration: underline;
}

.tut-skip-link:disabled[b-ehc61lvfjq] {
    opacity: 0.4;
    cursor: default;
}

/* ── Responsive ────────────────────────────────────────── */
@media (max-width: 600px) {
    .tut-modal[b-ehc61lvfjq] {
        border-radius: 16px 16px 0 0;
        max-width: 100%;
    }

    .tut-btn[b-ehc61lvfjq] {
        min-width: 80px;
        padding: 8px 12px;
        font-size: 0.82rem;
    }
}
