/* /Components/Auth/AuthPageShell.razor.rz.scp.css */
.auth-page[b-7b0rlsk39l] {
    min-height: 100vh;

    display: flex;

    align-items: center;
    justify-content: center;

    padding:
        var(--spacing-6);

    background:
        var(--gradient-background),
        var(--color-background);
}


.auth-page__card[b-7b0rlsk39l] {
    width: 100%;
    max-width: 420px;

    padding:
        var(--spacing-8);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-xl);

    box-shadow:
        var(--shadow-medium);
}


.auth-page__brand[b-7b0rlsk39l] {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom:
        var(--spacing-6);

    color:
        var(--color-text);

    font-size: 1.05rem;
    font-weight: 750;

    letter-spacing: -0.03em;
}


.auth-page__brand-icon[b-7b0rlsk39l] {
    width: 34px;
    height: 34px;

    display: grid;

    place-items: center;

    background:
        var(--gradient-primary);

    border-radius:
        var(--radius-sm);

    box-shadow:
        0 8px 24px
        rgba(124, 92, 255, 0.2);
}


.auth-page__brand-icon svg[b-7b0rlsk39l] {
    width: 19px;
    height: 19px;

    fill: none;

    stroke: white;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.auth-page__brand-accent[b-7b0rlsk39l] {
    color:
        var(--color-primary);
}


.auth-page__title[b-7b0rlsk39l] {
    color:
        var(--color-text);

    font-size: 1.5rem;
    font-weight: 800;

    letter-spacing: -0.02em;
}


.auth-page__subtitle[b-7b0rlsk39l] {
    margin-top: 6px;

    color:
        var(--color-text-secondary);

    font-size: 0.9rem;

    line-height: 1.5;
}


.auth-page__card[b-7b0rlsk39l]  .auth-form {
    margin-top:
        var(--spacing-6);
}


.auth-page__footer[b-7b0rlsk39l] {
    margin-top:
        var(--spacing-6);

    padding-top:
        var(--spacing-5);

    border-top:
        1px solid var(--color-border);

    color:
        var(--color-text-secondary);

    font-size: 0.86rem;
    text-align: center;
}


.auth-page__footer[b-7b0rlsk39l]  a {
    color:
        var(--color-primary);

    font-weight: 600;
}
/* /Components/Common/AppBadge.razor.rz.scp.css */
.app-badge[b-uot3eyzg87] {
    display: inline-flex;

    align-items: center;

    gap: 6px;

    padding:
        4px 11px;

    border-radius:
        var(--radius-pill);

    font-size: 0.76rem;
    font-weight: 650;

    white-space: nowrap;
}


.app-badge--neutral[b-uot3eyzg87] {
    color:
        var(--color-text-secondary);

    background:
        var(--color-surface-secondary);

    border:
        1px solid var(--color-border);
}


.app-badge--primary[b-uot3eyzg87] {
    color:
        var(--color-primary);

    background:
        var(--color-primary-soft);

    border:
        1px solid var(--color-primary-border);
}


.app-badge--success[b-uot3eyzg87] {
    color:
        var(--color-success);

    background:
        rgba(62, 214, 160, 0.12);

    border:
        1px solid rgba(62, 214, 160, 0.28);
}


.app-badge--warning[b-uot3eyzg87] {
    color:
        var(--color-warning);

    background:
        rgba(245, 185, 76, 0.12);

    border:
        1px solid rgba(245, 185, 76, 0.28);
}


.app-badge--danger[b-uot3eyzg87] {
    color:
        var(--color-danger);

    background:
        rgba(239, 98, 108, 0.12);

    border:
        1px solid rgba(239, 98, 108, 0.28);
}
/* /Components/Common/AppButton.razor.rz.scp.css */
.app-button[b-23awla8wmq] {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    border:
        1px solid transparent;

    border-radius:
        var(--radius-md);

    font-weight: 650;

    white-space: nowrap;

    cursor: pointer;

    transition:
        color var(--transition-fast),
        background var(--transition-fast),
        border-color var(--transition-fast),
        transform var(--transition-fast),
        box-shadow var(--transition-fast);
}


.app-button:hover[b-23awla8wmq] {
    transform:
        translateY(-1px);
}


.app-button:active[b-23awla8wmq] {
    transform:
        translateY(0);
}


.app-button:disabled[b-23awla8wmq] {
    opacity: 0.45;

    cursor:
        not-allowed;

    transform: none;
}


/* =========================================================
   SIZES
   ========================================================= */

.app-button--small[b-23awla8wmq] {
    min-height: 36px;

    padding:
        7px 13px;

    font-size:
        0.84rem;
}


.app-button--normal[b-23awla8wmq] {
    min-height: 43px;

    padding:
        9px 17px;

    font-size:
        0.92rem;
}


.app-button--large[b-23awla8wmq] {
    min-height: 52px;

    padding:
        13px 22px;

    font-size:
        0.98rem;
}


/* =========================================================
   PRIMARY
   ========================================================= */

.app-button--primary[b-23awla8wmq] {
    color: white;

    background:
        var(--color-primary);

    box-shadow:
        0 8px 24px
        rgba(124, 92, 255, 0.2);
}


.app-button--primary:hover[b-23awla8wmq] {
    background:
        var(--color-primary-hover);

    box-shadow:
        0 12px 30px
        rgba(124, 92, 255, 0.28);
}


/* =========================================================
   SECONDARY
   ========================================================= */

.app-button--secondary[b-23awla8wmq] {
    color:
        var(--color-text);

    background:
        rgba(255, 255, 255, 0.035);

    border-color:
        var(--color-border);
}


.app-button--secondary:hover[b-23awla8wmq] {
    background:
        var(--color-surface-secondary);

    border-color:
        var(--color-border-hover);
}


/* =========================================================
   GHOST
   ========================================================= */

.app-button--ghost[b-23awla8wmq] {
    color:
        var(--color-text-secondary);

    background:
        transparent;
}


.app-button--ghost:hover[b-23awla8wmq] {
    color:
        var(--color-text);

    background:
        rgba(255, 255, 255, 0.04);
}


/* =========================================================
   DANGER
   ========================================================= */

.app-button--danger[b-23awla8wmq] {
    color: white;

    background:
        var(--color-danger);

    box-shadow:
        0 8px 24px
        rgba(239, 98, 108, 0.2);
}


.app-button--danger:hover[b-23awla8wmq] {
    background:
        #f37881;

    box-shadow:
        0 12px 30px
        rgba(239, 98, 108, 0.28);
}
/* /Components/Common/AppCard.razor.rz.scp.css */
.app-card[b-re50h41kk2] {
    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-lg);

    padding:
        var(--spacing-6);

    transition:
        border-color var(--transition-fast),
        transform var(--transition-fast),
        box-shadow var(--transition-fast);
}


.app-card--hoverable:hover[b-re50h41kk2] {
    border-color:
        var(--color-border-hover);

    transform:
        translateY(-2px);

    box-shadow:
        var(--shadow-small);
}
/* /Components/Common/AppIcon.razor.rz.scp.css */
.app-icon[b-yb1y1ad3i9] {
    width: 20px;
    height: 20px;

    flex-shrink: 0;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;
}
/* /Components/Common/AppInput.razor.rz.scp.css */
.app-field[b-k1dkx28xsl] {
    display: flex;
    flex-direction: column;

    gap: 7px;

    width: 100%;
}


.app-field__label[b-k1dkx28xsl] {
    color:
        var(--color-text-secondary);

    font-size: 0.84rem;
    font-weight: 600;
}


.app-field__required[b-k1dkx28xsl] {
    color:
        var(--color-danger);

    margin-left: 2px;
}


.app-field__control[b-k1dkx28xsl] {
    width: 100%;

    min-height: 44px;

    padding:
        10px 14px;

    color:
        var(--color-text);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-md);

    font-size: 0.92rem;

    transition:
        border-color var(--transition-fast),
        background var(--transition-fast);
}


.app-field__control[b-k1dkx28xsl]::placeholder {
    color:
        var(--color-text-muted);
}


.app-field__control:hover[b-k1dkx28xsl] {
    border-color:
        var(--color-border-hover);
}


.app-field__control:focus[b-k1dkx28xsl] {
    outline: none;

    border-color:
        var(--color-primary);

    background:
        var(--color-surface-secondary);
}


.app-field__control:disabled[b-k1dkx28xsl] {
    opacity: 0.5;

    cursor:
        not-allowed;
}


.app-field__control--error[b-k1dkx28xsl] {
    border-color:
        var(--color-danger);
}


.app-field__control--textarea[b-k1dkx28xsl] {
    min-height: 100px;

    resize: vertical;

    font-family: inherit;
}


.app-field__error[b-k1dkx28xsl] {
    color:
        var(--color-danger);

    font-size: 0.8rem;
}
/* /Components/Common/AppModal.razor.rz.scp.css */
.app-modal-overlay[b-92k132w1w0] {
    position: fixed;
    inset: 0;

    z-index: 1000;

    display: flex;

    align-items: center;
    justify-content: center;

    padding:
        var(--spacing-4);

    background:
        rgba(3, 4, 8, 0.6);

    backdrop-filter:
        blur(4px);

    -webkit-backdrop-filter:
        blur(4px);

    animation:
        app-modal-fade-in-b-92k132w1w0 var(--transition-normal);
}


.app-modal[b-92k132w1w0] {
    width: 100%;
    max-width: 480px;

    max-height: 90vh;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-lg);

    box-shadow:
        var(--shadow-large);

    animation:
        app-modal-scale-in-b-92k132w1w0 var(--transition-normal);
}


.app-modal__header[b-92k132w1w0] {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap:
        var(--spacing-4);

    padding:
        var(--spacing-5) var(--spacing-6);

    border-bottom:
        1px solid var(--color-border);
}


.app-modal__title[b-92k132w1w0] {
    color:
        var(--color-text);

    font-size: 1.05rem;
    font-weight: 700;
}


.app-modal__close[b-92k132w1w0] {
    display: grid;

    place-items: center;

    width: 30px;
    height: 30px;

    color:
        var(--color-text-muted);

    background:
        transparent;

    border-radius:
        var(--radius-sm);

    cursor: pointer;

    transition:
        background var(--transition-fast),
        color var(--transition-fast);
}


.app-modal__close:hover[b-92k132w1w0] {
    color:
        var(--color-text);

    background:
        var(--color-surface-secondary);
}


.app-modal__body[b-92k132w1w0] {
    padding:
        var(--spacing-6);

    overflow-y: auto;

    color:
        var(--color-text-secondary);

    font-size: 0.92rem;
    line-height: 1.6;
}


.app-modal__footer[b-92k132w1w0] {
    display: flex;
    flex-wrap: wrap;

    align-items: center;
    justify-content: flex-end;

    gap:
        var(--spacing-3);

    padding:
        var(--spacing-5) var(--spacing-6);

    border-top:
        1px solid var(--color-border);
}


@keyframes app-modal-fade-in-b-92k132w1w0 {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}


@keyframes app-modal-scale-in-b-92k132w1w0 {
    from {
        opacity: 0;
        transform: scale(0.96) translateY(6px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}
/* /Components/Common/AppProgress.razor.rz.scp.css */
.app-progress[b-nh5wa9q2gg] {
    display: flex;
    flex-direction: column;

    gap: 8px;

    width: 100%;
}


.app-progress__header[b-nh5wa9q2gg] {
    display: flex;

    align-items: center;
    justify-content: space-between;
}


.app-progress__label[b-nh5wa9q2gg] {
    color:
        var(--color-text-secondary);

    font-size: 0.82rem;
    font-weight: 600;
}


.app-progress__value[b-nh5wa9q2gg] {
    color:
        var(--color-text);

    font-size: 0.82rem;
    font-weight: 700;
}


.app-progress__track[b-nh5wa9q2gg] {
    width: 100%;
    height: 8px;

    background:
        var(--color-surface-secondary);

    border-radius:
        var(--radius-pill);

    overflow: hidden;
}


.app-progress__fill[b-nh5wa9q2gg] {
    height: 100%;

    background:
        var(--gradient-primary);

    border-radius:
        var(--radius-pill);

    transition:
        width var(--transition-normal);
}
/* /Components/Common/AppSelect.razor.rz.scp.css */
.app-field__control[b-2kuzuotd50] {
    appearance: none;

    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='%23a5adbb' stroke-width='1.6' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    background-repeat: no-repeat;
    background-position: right 14px center;

    padding-right: 36px;

    cursor: pointer;
}
/* /Components/Common/AppSpinner.razor.rz.scp.css */
.app-spinner[b-112wi105tw] {
    display: inline-block;

    border-radius: 50%;

    border:
        2px solid var(--color-border);

    border-top-color:
        var(--color-primary);

    animation:
        app-spinner-spin-b-112wi105tw 0.7s linear infinite;
}


.app-spinner--small[b-112wi105tw] {
    width: 16px;
    height: 16px;
}


.app-spinner--normal[b-112wi105tw] {
    width: 26px;
    height: 26px;

    border-width: 3px;
}


.app-spinner--large[b-112wi105tw] {
    width: 40px;
    height: 40px;

    border-width: 3px;
}


@keyframes app-spinner-spin-b-112wi105tw {
    to {
        transform: rotate(360deg);
    }
}
/* /Components/Common/EmptyState.razor.rz.scp.css */
.empty-state[b-ttemc3qoi4] {
    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: var(--spacing-2);

    padding:
        var(--spacing-16) var(--spacing-6);

    text-align: center;
}


.empty-state__icon[b-ttemc3qoi4] {
    display: grid;

    place-items: center;

    width: 64px;
    height: 64px;

    margin-bottom:
        var(--spacing-2);

    background:
        var(--color-surface-secondary);

    border-radius:
        var(--radius-xl);

    font-size: 1.7rem;
}


.empty-state__title[b-ttemc3qoi4] {
    color:
        var(--color-text);

    font-size: 1.05rem;
    font-weight: 700;
}


.empty-state__description[b-ttemc3qoi4] {
    max-width: 380px;

    color:
        var(--color-text-muted);

    font-size: 0.88rem;
    line-height: 1.6;
}


.empty-state__actions[b-ttemc3qoi4] {
    display: flex;
    flex-wrap: wrap;

    align-items: center;
    justify-content: center;

    gap: var(--spacing-3);

    margin-top:
        var(--spacing-3);
}
/* /Components/Common/ErrorState.razor.rz.scp.css */
.error-state[b-ozp6zimpfu] {
    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: var(--spacing-2);

    padding:
        var(--spacing-16) var(--spacing-6);

    text-align: center;
}


.error-state__icon[b-ozp6zimpfu] {
    display: grid;

    place-items: center;

    width: 64px;
    height: 64px;

    margin-bottom:
        var(--spacing-2);

    color:
        var(--color-danger);

    background:
        rgba(239, 98, 108, 0.1);

    border-radius:
        var(--radius-xl);

    font-size: 1.6rem;
}


.error-state__title[b-ozp6zimpfu] {
    color:
        var(--color-text);

    font-size: 1.05rem;
    font-weight: 700;
}


.error-state__description[b-ozp6zimpfu] {
    max-width: 380px;

    color:
        var(--color-text-muted);

    font-size: 0.88rem;
    line-height: 1.6;
}


.error-state[b-ozp6zimpfu]  .app-button {
    margin-top:
        var(--spacing-3);
}
/* /Components/Common/GlobalErrorView.razor.rz.scp.css */
.global-error[b-mh7wsh21qv] {
    min-height: 100vh;

    display: flex;

    align-items: center;
    justify-content: center;

    padding: 24px;

    background:
        var(--color-background);
}


.global-error__card[b-mh7wsh21qv] {
    width:
        min(100%, 680px);

    padding: 28px;

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-xl);

    box-shadow:
        var(--shadow-large);
}


.global-error__icon[b-mh7wsh21qv] {
    width: 48px;
    height: 48px;

    display: grid;

    place-items: center;

    margin-bottom: 18px;

    color:
        var(--color-danger);

    background:
        rgba(239, 98, 108, 0.12);

    border-radius:
        var(--radius-md);

    font-size: 1.4rem;

    font-weight: 800;
}


h1[b-mh7wsh21qv] {
    margin:
        0 0 10px;

    font-size:
        1.6rem;
}


p[b-mh7wsh21qv] {
    margin:
        0 0 20px;

    color:
        var(--color-text-secondary);

    line-height:
        1.65;
}


.global-error__message[b-mh7wsh21qv] {
    padding: 13px 15px;

    color:
        #ff9ca4;

    background:
        var(--color-background);

    border:
        1px solid
        rgba(239, 98, 108, 0.25);

    border-radius:
        var(--radius-md);

    font-family:
        monospace;

    font-size:
        0.8rem;

    word-break:
        break-word;
}


.global-error__actions[b-mh7wsh21qv] {
    margin-top:
        18px;
}


.global-error__actions button[b-mh7wsh21qv] {
    min-height: 44px;

    padding:
        10px 17px;

    color: white;

    background:
        var(--color-primary);

    border: 0;

    border-radius:
        var(--radius-md);

    cursor: pointer;

    font-weight: 650;
}


details[b-mh7wsh21qv] {
    margin-top:
        20px;
}


summary[b-mh7wsh21qv] {
    color:
        var(--color-text-secondary);

    cursor: pointer;

    font-size:
        0.85rem;

    font-weight: 600;
}


pre[b-mh7wsh21qv] {
    overflow-x: auto;

    margin:
        12px 0 0;

    padding: 15px;

    color:
        var(--color-text-secondary);

    background:
        var(--color-background);

    border-radius:
        var(--radius-md);

    white-space: pre-wrap;
    word-break: break-word;

    font-size:
        0.7rem;

    line-height: 1.55;
}
/* /Components/Common/LoadingState.razor.rz.scp.css */
.loading-state[b-o03r49z1jp] {
    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: var(--spacing-4);

    padding:
        var(--spacing-16) var(--spacing-6);

    text-align: center;
}


.loading-state__message[b-o03r49z1jp] {
    color:
        var(--color-text-muted);

    font-size: 0.9rem;
}
/* /Components/Landing/FeaturesSection.razor.rz.scp.css */
.features[b-m02xnfy12y] {
    padding:
        var(--spacing-24) 0;
}


.features__intro[b-m02xnfy12y] {
    max-width: 620px;

    margin-inline: auto;

    margin-bottom:
        var(--spacing-16);

    text-align: center;
}


.features__title[b-m02xnfy12y] {
    margin-top:
        var(--spacing-3);

    color:
        var(--color-text);

    font-size:
        clamp(1.7rem, 1.2rem + 2vw, 2.4rem);

    font-weight: 800;

    letter-spacing: -0.02em;

    line-height: 1.2;
}


.features__description[b-m02xnfy12y] {
    margin-top:
        var(--spacing-4);

    color:
        var(--color-text-secondary);

    font-size: 1rem;

    line-height: 1.65;
}


/* =========================================================
   GRID
   ========================================================= */

.features__grid[b-m02xnfy12y] {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap:
        var(--spacing-5);
}


.feature-card[b-m02xnfy12y] {
    display: flex;
    flex-direction: column;

    gap:
        var(--spacing-3);
}


.feature-card__icon[b-m02xnfy12y] {
    display: grid;

    place-items: center;

    width: 46px;
    height: 46px;

    background:
        var(--color-primary-soft);

    border-radius:
        var(--radius-md);

    font-size: 1.3rem;
}


.feature-card__title[b-m02xnfy12y] {
    color:
        var(--color-text);

    font-size: 1rem;
    font-weight: 700;
}


.feature-card__description[b-m02xnfy12y] {
    color:
        var(--color-text-muted);

    font-size: 0.86rem;
    line-height: 1.55;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 980px) {

    .features__grid[b-m02xnfy12y] {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


@media (max-width: 560px) {

    .features[b-m02xnfy12y] {
        padding:
            var(--spacing-16) 0;
    }


    .features__grid[b-m02xnfy12y] {
        grid-template-columns: 1fr;
    }

}
/* /Components/Landing/FinalCTASection.razor.rz.scp.css */
.final-cta[b-in2sihecmq] {
    padding:
        var(--spacing-24) 0;
}


.final-cta__panel[b-in2sihecmq] {
    position: relative;

    overflow: hidden;

    display: flex;
    flex-direction: column;

    align-items: center;

    gap:
        var(--spacing-5);

    padding:
        var(--spacing-20) var(--spacing-8);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-2xl);

    text-align: center;
}


.final-cta__panel[b-in2sihecmq]::before {
    content: "";

    position: absolute;
    inset: 0;

    background:
        var(--gradient-background);

    pointer-events: none;
}


.final-cta__title[b-in2sihecmq] {
    position: relative;

    max-width: 640px;

    color:
        var(--color-text);

    font-size:
        clamp(1.8rem, 1.3rem + 2vw, 2.6rem);

    font-weight: 800;

    letter-spacing: -0.02em;

    line-height: 1.2;
}


.final-cta__description[b-in2sihecmq] {
    position: relative;

    max-width: 480px;

    color:
        var(--color-text-secondary);

    font-size: 1rem;

    line-height: 1.65;
}


.final-cta__actions[b-in2sihecmq] {
    position: relative;

    display: flex;
    flex-wrap: wrap;

    align-items: center;
    justify-content: center;

    gap:
        var(--spacing-3);

    margin-top:
        var(--spacing-2);
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 560px) {

    .final-cta[b-in2sihecmq] {
        padding:
            var(--spacing-16) 0;
    }


    .final-cta__panel[b-in2sihecmq] {
        padding:
            var(--spacing-12) var(--spacing-5);
    }


    .final-cta__actions[b-in2sihecmq] {
        flex-direction: column;

        width: 100%;
    }


    .final-cta__actions[b-in2sihecmq]  .app-button {
        width: 100%;
    }

}
/* /Components/Landing/HeroSection.razor.rz.scp.css */
.hero[b-t65kqmblcr] {
    position: relative;

    min-height:
        calc(100vh - var(--header-height));

    display: flex;

    align-items: center;

    overflow: hidden;

    padding:
        80px 0 100px;
}


.hero__container[b-t65kqmblcr] {
    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1.06fr)
        minmax(430px, 0.94fr);

    align-items: center;

    gap: 72px;
}


/* =========================================================
   TEXT
   ========================================================= */

.hero__content[b-t65kqmblcr] {
    max-width: 660px;
}


.hero__badge[b-t65kqmblcr] {
    width: fit-content;

    display: flex;

    align-items: center;

    gap: 8px;

    padding:
        7px 12px;

    margin-bottom:
        24px;

    color:
        #cbc4ff;

    background:
        var(--color-primary-soft);

    border:
        1px solid var(--color-primary-border);

    border-radius:
        var(--radius-pill);

    font-size:
        0.8rem;

    font-weight:
        600;
}


.hero__badge-dot[b-t65kqmblcr] {
    width: 7px;
    height: 7px;

    flex-shrink: 0;

    background:
        var(--color-success);

    border-radius:
        50%;

    box-shadow:
        0 0 12px
        rgba(62, 214, 160, 0.7);
}


.hero__title[b-t65kqmblcr] {
    margin: 0;

    font-size:
        clamp(3rem, 5.5vw, 5.25rem);

    line-height:
        0.99;

    font-weight:
        760;

    letter-spacing:
        -0.065em;
}


.hero__title span[b-t65kqmblcr] {
    display: block;

    margin-top:
        9px;
}


.hero__description[b-t65kqmblcr] {
    max-width:
        610px;

    margin:
        30px 0 0;

    color:
        var(--color-text-secondary);

    font-size:
        clamp(1rem, 1.3vw, 1.1rem);

    line-height:
        1.75;
}


.hero__actions[b-t65kqmblcr] {
    display: flex;

    flex-wrap: wrap;

    gap: 11px;

    margin-top:
        34px;
}


.hero__benefits[b-t65kqmblcr] {
    display: flex;

    flex-wrap: wrap;

    gap: 22px;

    margin-top:
        27px;

    color:
        var(--color-text-muted);

    font-size:
        0.8rem;
}


.hero__benefits div[b-t65kqmblcr] {
    display: flex;

    align-items: center;

    gap: 6px;
}


.hero__benefits span[b-t65kqmblcr] {
    color:
        var(--color-success);

    font-weight:
        750;
}


/* =========================================================
   PREVIEW
   ========================================================= */

.hero__preview[b-t65kqmblcr] {
    position: relative;

    perspective:
        1200px;
}


.study-preview[b-t65kqmblcr] {
    overflow: hidden;

    background:
        rgba(16, 20, 29, 0.92);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-xl);

    box-shadow:
        var(--shadow-large);

    transform:
        rotateY(-2.5deg)
        rotateX(1.5deg);
}


.study-preview__header[b-t65kqmblcr] {
    min-height: 53px;

    display: grid;

    grid-template-columns:
        1fr auto 1fr;

    align-items: center;

    padding:
        0 17px;

    background:
        rgba(255, 255, 255, 0.02);

    border-bottom:
        1px solid var(--color-border);
}


.window-controls[b-t65kqmblcr] {
    display: flex;

    gap: 6px;
}


.window-controls span[b-t65kqmblcr] {
    width: 8px;
    height: 8px;

    background:
        rgba(255, 255, 255, 0.14);

    border-radius:
        50%;
}


.study-preview__title[b-t65kqmblcr] {
    color:
        var(--color-text-muted);

    font-size:
        0.7rem;
}


.ai-status[b-t65kqmblcr] {
    justify-self: end;

    display: flex;

    align-items: center;

    gap: 6px;

    color:
        var(--color-text-muted);

    font-size:
        0.68rem;
}


.ai-status__dot[b-t65kqmblcr] {
    width: 6px;
    height: 6px;

    background:
        var(--color-success);

    border-radius:
        50%;
}


.study-preview__content[b-t65kqmblcr] {
    padding:
        25px;
}


.session-header[b-t65kqmblcr] {
    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    gap: 20px;
}


.session-header > div[b-t65kqmblcr] {
    display: flex;

    flex-direction: column;
}


.session-type[b-t65kqmblcr] {
    color:
        var(--color-primary);

    font-size:
        0.62rem;

    font-weight:
        750;

    letter-spacing:
        0.1em;
}


.session-header strong[b-t65kqmblcr] {
    margin-top:
        3px;

    font-size:
        0.9rem;
}


.session-count[b-t65kqmblcr] {
    color:
        var(--color-text-muted);

    font-size:
        0.72rem;
}


.progress-bar[b-t65kqmblcr] {
    height: 4px;

    overflow: hidden;

    margin:
        15px 0 21px;

    background:
        rgba(255, 255, 255, 0.06);

    border-radius:
        var(--radius-pill);
}


.progress-bar__value[b-t65kqmblcr] {
    width: 60%;
    height: 100%;

    background:
        var(--gradient-primary);

    border-radius:
        inherit;
}


/* =========================================================
   QUESTION
   ========================================================= */

.question[b-t65kqmblcr] {
    padding:
        21px;

    background:
        rgba(255, 255, 255, 0.022);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-lg);
}


.question__number[b-t65kqmblcr] {
    color:
        var(--color-text-muted);

    font-size:
        0.68rem;
}


.question h2[b-t65kqmblcr] {
    margin:
        7px 0 19px;

    font-size:
        1.04rem;

    line-height:
        1.45;

    letter-spacing:
        -0.015em;
}


.question__answers[b-t65kqmblcr] {
    display: grid;

    gap: 8px;
}


.answer-option[b-t65kqmblcr] {
    min-height:
        41px;

    display: flex;

    align-items: center;

    gap: 10px;

    padding:
        8px 11px;

    color:
        var(--color-text-secondary);

    background:
        rgba(255, 255, 255, 0.01);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-md);

    font-size:
        0.84rem;
}


.answer-option > span[b-t65kqmblcr] {
    width: 25px;
    height: 25px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    background:
        var(--color-surface-secondary);

    border-radius:
        7px;

    font-size:
        0.67rem;

    font-weight:
        750;
}


.answer-option--selected[b-t65kqmblcr] {
    color:
        var(--color-text);

    background:
        var(--color-primary-soft);

    border-color:
        rgba(124, 92, 255, 0.42);
}


.answer-option--selected > span[b-t65kqmblcr] {
    color: white;

    background:
        var(--color-primary);
}


/* =========================================================
   SOURCE
   ========================================================= */

.source-reference[b-t65kqmblcr] {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-top:
        14px;

    padding:
        9px 11px;

    color:
        var(--color-text-muted);

    background:
        rgba(255, 255, 255, 0.018);

    border-radius:
        var(--radius-md);
}


.source-reference__icon[b-t65kqmblcr] {
    width: 30px;
    height: 30px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    color:
        var(--color-primary);

    background:
        var(--color-primary-soft);

    border-radius:
        9px;
}


.source-reference > div:last-child[b-t65kqmblcr] {
    display: flex;

    flex-direction: column;
}


.source-reference span[b-t65kqmblcr] {
    font-size:
        0.62rem;
}


.source-reference strong[b-t65kqmblcr] {
    color:
        var(--color-text-secondary);

    font-size:
        0.7rem;
}


/* =========================================================
   GLOWS
   ========================================================= */

.hero__glow[b-t65kqmblcr] {
    position: absolute;

    pointer-events: none;

    border-radius:
        50%;

    filter:
        blur(120px);

    opacity:
        0.16;
}


.hero__glow--primary[b-t65kqmblcr] {
    width: 500px;
    height: 500px;

    top: -40px;
    right: 6%;

    background:
        var(--color-primary);
}


.hero__glow--secondary[b-t65kqmblcr] {
    width: 380px;
    height: 380px;

    bottom: -180px;
    left: 12%;

    background:
        var(--color-info);
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1050px) {

    .hero__container[b-t65kqmblcr] {
        grid-template-columns:
            1fr;

        gap: 65px;
    }


    .hero__content[b-t65kqmblcr] {
        max-width:
            760px;
    }


    .hero__preview[b-t65kqmblcr] {
        width:
            min(100%, 700px);

        margin-inline:
            auto;
    }


    .study-preview[b-t65kqmblcr] {
        transform:
            none;
    }

}


@media (max-width: 600px) {

    .hero[b-t65kqmblcr] {
        padding:
            55px 0 70px;
    }


    .hero__title[b-t65kqmblcr] {
        font-size:
            clamp(2.75rem, 13vw, 4rem);
    }


    .hero__description[b-t65kqmblcr] {
        margin-top:
            22px;
    }


    .hero__actions[b-t65kqmblcr] {
        flex-direction:
            column;
    }


    .hero__actions[b-t65kqmblcr]  .app-button {
        width: 100%;
    }


    .hero__benefits[b-t65kqmblcr] {
        flex-direction:
            column;

        gap: 7px;
    }


    .study-preview__content[b-t65kqmblcr] {
        padding:
            15px;
    }

}
/* /Components/Landing/HowItWorksSection.razor.rz.scp.css */
.how-it-works[b-7pyge3jh75] {
    padding:
        var(--spacing-24) 0;

    background:
        var(--color-background-soft);

    border-top:
        1px solid var(--color-border);

    border-bottom:
        1px solid var(--color-border);
}


.how-it-works__intro[b-7pyge3jh75] {
    max-width: 620px;

    margin-inline: auto;

    margin-bottom:
        var(--spacing-16);

    text-align: center;
}


.how-it-works__title[b-7pyge3jh75] {
    margin-top:
        var(--spacing-3);

    color:
        var(--color-text);

    font-size:
        clamp(1.7rem, 1.2rem + 2vw, 2.4rem);

    font-weight: 800;

    letter-spacing: -0.02em;

    line-height: 1.2;
}


/* =========================================================
   STEPS
   ========================================================= */

.how-it-works__steps[b-7pyge3jh75] {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap:
        var(--spacing-6);
}


.step[b-7pyge3jh75] {
    position: relative;

    padding:
        var(--spacing-6);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-lg);
}


.step__number[b-7pyge3jh75] {
    display: grid;

    place-items: center;

    width: 38px;
    height: 38px;

    margin-bottom:
        var(--spacing-4);

    color: white;

    background:
        var(--gradient-primary);

    border-radius:
        var(--radius-md);

    font-size: 0.95rem;
    font-weight: 800;
}


.step__title[b-7pyge3jh75] {
    color:
        var(--color-text);

    font-size: 1rem;
    font-weight: 700;
}


.step__description[b-7pyge3jh75] {
    margin-top:
        var(--spacing-2);

    color:
        var(--color-text-muted);

    font-size: 0.86rem;
    line-height: 1.55;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 980px) {

    .how-it-works__steps[b-7pyge3jh75] {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


@media (max-width: 560px) {

    .how-it-works[b-7pyge3jh75] {
        padding:
            var(--spacing-16) 0;
    }


    .how-it-works__steps[b-7pyge3jh75] {
        grid-template-columns: 1fr;
    }

}
/* /Components/Landing/LandingFooter.razor.rz.scp.css */
.landing-footer[b-4e3igqnzo6] {
    padding:
        var(--spacing-16) 0 var(--spacing-8);

    border-top:
        1px solid var(--color-border);
}


.landing-footer__container[b-4e3igqnzo6] {
    display: grid;

    grid-template-columns: 1.2fr 1fr;

    gap:
        var(--spacing-10);
}


.footer-brand__name[b-4e3igqnzo6] {
    color:
        var(--color-text);

    font-size: 1.1rem;
    font-weight: 750;

    letter-spacing: -0.03em;
}


.footer-brand__name span[b-4e3igqnzo6] {
    color:
        var(--color-primary);
}


.footer-brand__tagline[b-4e3igqnzo6] {
    max-width: 320px;

    margin-top:
        var(--spacing-3);

    color:
        var(--color-text-muted);

    font-size: 0.86rem;
    line-height: 1.6;
}


.footer-links[b-4e3igqnzo6] {
    display: flex;
    flex-wrap: wrap;

    align-content: flex-start;

    gap:
        var(--spacing-2) var(--spacing-8);

    justify-self: end;
}


.footer-links a[b-4e3igqnzo6] {
    color:
        var(--color-text-secondary);

    font-size: 0.88rem;
    font-weight: 500;

    transition:
        color var(--transition-fast);
}


.footer-links a:hover[b-4e3igqnzo6] {
    color:
        var(--color-text);
}


.landing-footer__bottom[b-4e3igqnzo6] {
    grid-column: 1 / -1;

    margin-top:
        var(--spacing-10);

    padding-top:
        var(--spacing-6);

    border-top:
        1px solid var(--color-border);

    color:
        var(--color-text-muted);

    font-size: 0.8rem;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 640px) {

    .landing-footer__container[b-4e3igqnzo6] {
        grid-template-columns: 1fr;

        gap:
            var(--spacing-6);
    }


    .footer-links[b-4e3igqnzo6] {
        justify-self: start;
    }

}
/* /Components/Landing/LandingHeader.razor.rz.scp.css */
.landing-header[b-jz3gcvc0sr] {
    position: sticky;

    top: 0;

    z-index: 100;

    height:
        var(--header-height);

    background:
        rgba(8, 10, 15, 0.76);

    backdrop-filter:
        blur(18px);

    -webkit-backdrop-filter:
        blur(18px);

    border-bottom:
        1px solid var(--color-border);
}


.landing-header__container[b-jz3gcvc0sr] {
    height: 100%;

    display: flex;

    align-items: center;

    gap: 32px;
}


/* =========================================================
   BRAND
   ========================================================= */

.brand[b-jz3gcvc0sr] {
    display: flex;

    align-items: center;

    gap: 10px;

    flex-shrink: 0;
}


.brand__icon[b-jz3gcvc0sr] {
    width: 36px;
    height: 36px;

    display: grid;

    place-items: center;

    background:
        var(--gradient-primary);

    border-radius:
        11px;

    box-shadow:
        0 8px 24px
        rgba(124, 92, 255, 0.2);
}


.brand__icon svg[b-jz3gcvc0sr] {
    width: 21px;
    height: 21px;

    fill: none;

    stroke: white;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.brand__name[b-jz3gcvc0sr] {
    color:
        var(--color-text);

    font-size:
        1.14rem;

    font-weight:
        750;

    letter-spacing:
        -0.035em;
}


.brand__name span[b-jz3gcvc0sr] {
    color:
        var(--color-primary);
}


/* =========================================================
   NAVIGATION
   ========================================================= */

.landing-header__navigation[b-jz3gcvc0sr] {
    display: flex;

    align-items: center;

    gap: 28px;

    margin-left: auto;
}


.landing-header__navigation a[b-jz3gcvc0sr] {
    color:
        var(--color-text-secondary);

    font-size:
        0.88rem;

    font-weight:
        500;

    transition:
        color var(--transition-fast);
}


.landing-header__navigation a:hover[b-jz3gcvc0sr] {
    color:
        var(--color-text);
}


/* =========================================================
   ACTIONS
   ========================================================= */

.landing-header__actions[b-jz3gcvc0sr] {
    display: flex;

    align-items: center;

    gap: 5px;

    margin-left: 10px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 850px) {

    .landing-header__navigation[b-jz3gcvc0sr] {
        display: none;
    }


    .landing-header__actions[b-jz3gcvc0sr] {
        margin-left: auto;
    }

}


@media (max-width: 520px) {

    .login-action[b-jz3gcvc0sr] {
        display: none;
    }

}
/* /Components/Landing/PrivacySection.razor.rz.scp.css */
.privacy[b-0tj1g52v8i] {
    padding:
        var(--spacing-24) 0;
}


.privacy__container[b-0tj1g52v8i] {
    display: grid;

    grid-template-columns: 1.1fr 0.9fr;

    align-items: center;

    gap:
        var(--spacing-16);
}


.privacy__title[b-0tj1g52v8i] {
    margin-top:
        var(--spacing-3);

    color:
        var(--color-text);

    font-size:
        clamp(1.7rem, 1.2rem + 2vw, 2.4rem);

    font-weight: 800;

    letter-spacing: -0.02em;

    line-height: 1.2;
}


.privacy__description[b-0tj1g52v8i] {
    margin-top:
        var(--spacing-4);

    color:
        var(--color-text-secondary);

    font-size: 1rem;

    line-height: 1.65;
}


.privacy__list[b-0tj1g52v8i] {
    display: flex;
    flex-direction: column;

    gap:
        var(--spacing-3);

    margin-top:
        var(--spacing-6);

    list-style: none;
}


.privacy__list li[b-0tj1g52v8i] {
    display: flex;

    align-items: flex-start;

    gap:
        var(--spacing-3);

    color:
        var(--color-text-secondary);

    font-size: 0.9rem;
    line-height: 1.55;
}


.privacy__list-icon[b-0tj1g52v8i] {
    flex-shrink: 0;

    font-size: 1.1rem;
}


/* =========================================================
   DIAGRAM
   ========================================================= */

.privacy__diagram[b-0tj1g52v8i] {
    display: flex;
    flex-direction: column;

    align-items: center;

    gap:
        var(--spacing-3);

    padding:
        var(--spacing-8);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-xl);
}


.privacy-card[b-0tj1g52v8i] {
    width: 100%;

    display: flex;
    flex-direction: column;

    gap: 6px;

    padding:
        var(--spacing-5);

    border-radius:
        var(--radius-md);

    text-align: center;
}


.privacy-card--device[b-0tj1g52v8i] {
    background:
        var(--color-primary-soft);

    border:
        1px solid var(--color-primary-border);
}

.privacy-card--device strong[b-0tj1g52v8i] {
    color:
        var(--color-primary);
}


.privacy-card--server[b-0tj1g52v8i] {
    background:
        var(--color-surface-secondary);

    border:
        1px solid var(--color-border);
}

.privacy-card--server strong[b-0tj1g52v8i] {
    color:
        var(--color-text);
}


.privacy-card__label[b-0tj1g52v8i] {
    color:
        var(--color-text-muted);

    font-size: 0.76rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-transform: uppercase;
}


.privacy-card__arrow[b-0tj1g52v8i] {
    color:
        var(--color-text-muted);

    font-size: 1.2rem;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

    .privacy__container[b-0tj1g52v8i] {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 560px) {

    .privacy[b-0tj1g52v8i] {
        padding:
            var(--spacing-16) 0;
    }

}
/* /Components/Oppositions/OppositionCard.razor.rz.scp.css */
.opposition-card[b-7almjdryp6] {
    display: flex;

    align-items: center;

    gap:
        var(--spacing-4);

    padding:
        var(--spacing-4) var(--spacing-5);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-lg);

    transition:
        border-color var(--transition-fast),
        transform var(--transition-fast);
}


.opposition-card:hover[b-7almjdryp6] {
    border-color:
        var(--color-border-hover);

    transform:
        translateY(-1px);
}


.opposition-card__icon[b-7almjdryp6] {
    display: grid;

    place-items: center;

    width: 42px;
    height: 42px;

    flex-shrink: 0;

    color:
        var(--color-primary);

    background:
        var(--color-primary-soft);

    border-radius:
        var(--radius-md);
}


.opposition-card__body[b-7almjdryp6] {
    flex: 1;
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 3px;
}


.opposition-card__body strong[b-7almjdryp6] {
    overflow: hidden;

    color:
        var(--color-text);

    font-size: 0.96rem;
    font-weight: 700;

    text-overflow: ellipsis;
    white-space: nowrap;
}


.opposition-card__body p[b-7almjdryp6] {
    overflow: hidden;

    color:
        var(--color-text-muted);

    font-size: 0.84rem;

    text-overflow: ellipsis;
    white-space: nowrap;
}


.opposition-card[b-7almjdryp6]  .app-icon:last-child {
    flex-shrink: 0;

    color:
        var(--color-text-muted);
}
/* /Components/Oppositions/TopicFormModal.razor.rz.scp.css */
.topic-form[b-c8ekjhapil] {
    display: flex;
    flex-direction: column;

    gap:
        var(--spacing-4);
}
/* /Components/Oppositions/TopicListItem.razor.rz.scp.css */
.topic-item[b-j6keqvpy6r] {
    display: flex;

    align-items: center;

    gap:
        var(--spacing-3);

    padding:
        var(--spacing-3) var(--spacing-4);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-md);
}


.topic-item__body[b-j6keqvpy6r] {
    flex: 1;
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 2px;
}


.topic-item__number[b-j6keqvpy6r] {
    color:
        var(--color-primary);

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.04em;
    text-transform: uppercase;
}


.topic-item__body strong[b-j6keqvpy6r] {
    overflow: hidden;

    color:
        var(--color-text);

    font-size: 0.92rem;
    font-weight: 650;

    text-overflow: ellipsis;
    white-space: nowrap;
}


.topic-item__body p[b-j6keqvpy6r] {
    overflow: hidden;

    color:
        var(--color-text-muted);

    font-size: 0.8rem;

    text-overflow: ellipsis;
    white-space: nowrap;
}


.topic-item__actions[b-j6keqvpy6r] {
    display: flex;
    flex-shrink: 0;

    gap: 4px;
}


.topic-item__action[b-j6keqvpy6r] {
    display: grid;

    place-items: center;

    width: 30px;
    height: 30px;

    color:
        var(--color-text-secondary);

    background:
        transparent;

    border-radius:
        var(--radius-sm);

    cursor: pointer;

    transition:
        color var(--transition-fast),
        background var(--transition-fast);
}


.topic-item__action:hover:not(:disabled)[b-j6keqvpy6r] {
    color:
        var(--color-text);

    background:
        var(--color-surface-secondary);
}


.topic-item__action:disabled[b-j6keqvpy6r] {
    opacity: 0.3;

    cursor:
        not-allowed;
}


.topic-item__action--danger:hover:not(:disabled)[b-j6keqvpy6r] {
    color:
        var(--color-danger);

    background:
        rgba(239, 98, 108, 0.1);
}


.topic-item__action[b-j6keqvpy6r]  .app-icon {
    width: 16px;
    height: 16px;
}
/* /Layout/AppLayout.razor.rz.scp.css */
.app-shell[b-1mjdahjqbr] {
    display: flex;

    min-height: 100vh;
}


/* =========================================================
   SIDEBAR (desktop)
   ========================================================= */

.app-shell__sidebar[b-1mjdahjqbr] {
    position: sticky;

    top: 0;

    flex-shrink: 0;

    width: 260px;
    height: 100vh;

    display: flex;
    flex-direction: column;

    padding:
        var(--spacing-5);

    background:
        var(--color-background-soft);

    border-right:
        1px solid var(--color-border);
}


.app-shell__brand[b-1mjdahjqbr] {
    display: flex;

    align-items: center;

    gap: 10px;

    padding:
        var(--spacing-2) var(--spacing-2) var(--spacing-6);

    color:
        var(--color-text);

    font-size: 1.05rem;
    font-weight: 750;

    letter-spacing: -0.03em;
}


.app-shell__brand-icon[b-1mjdahjqbr] {
    width: 32px;
    height: 32px;

    flex-shrink: 0;

    display: grid;

    place-items: center;

    background:
        var(--gradient-primary);

    border-radius:
        10px;

    box-shadow:
        0 8px 24px
        rgba(124, 92, 255, 0.2);
}


.app-shell__brand-icon svg[b-1mjdahjqbr] {
    width: 18px;
    height: 18px;

    fill: none;

    stroke: white;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.app-shell__brand-accent[b-1mjdahjqbr] {
    color:
        var(--color-primary);
}


.app-shell__sidebar[b-1mjdahjqbr]  .app-nav {
    flex: 1;
}


/* =========================================================
   USER BLOCK
   ========================================================= */

.app-shell__user[b-1mjdahjqbr] {
    display: flex;

    align-items: center;

    gap:
        var(--spacing-3);

    padding:
        var(--spacing-3);

    margin-top:
        var(--spacing-4);

    background:
        var(--color-surface);

    border:
        1px solid var(--color-border);

    border-radius:
        var(--radius-md);
}


.app-shell__user-info[b-1mjdahjqbr] {
    flex: 1;
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 2px;
}


.app-shell__user-info strong[b-1mjdahjqbr] {
    overflow: hidden;

    color:
        var(--color-text);

    font-size: 0.85rem;
    font-weight: 650;

    text-overflow: ellipsis;
    white-space: nowrap;
}


.app-shell__user-info span[b-1mjdahjqbr] {
    overflow: hidden;

    color:
        var(--color-text-muted);

    font-size: 0.76rem;

    text-overflow: ellipsis;
    white-space: nowrap;
}


.app-shell__logout[b-1mjdahjqbr] {
    display: grid;

    place-items: center;

    width: 34px;
    height: 34px;

    flex-shrink: 0;

    color:
        var(--color-text-secondary);

    background:
        transparent;

    border-radius:
        var(--radius-sm);

    cursor: pointer;

    transition:
        color var(--transition-fast),
        background var(--transition-fast);
}


.app-shell__logout:hover[b-1mjdahjqbr] {
    color:
        var(--color-danger);

    background:
        rgba(239, 98, 108, 0.1);
}


.app-shell__logout--mobile[b-1mjdahjqbr] {
    display: none;
}


/* =========================================================
   MAIN / TOPBAR
   ========================================================= */

.app-shell__main[b-1mjdahjqbr] {
    flex: 1;
    min-width: 0;
}


.app-shell__topbar[b-1mjdahjqbr] {
    display: none;

    align-items: center;
    justify-content: space-between;

    height: 60px;

    padding-inline:
        var(--spacing-4);

    background:
        rgba(8, 10, 15, 0.86);

    backdrop-filter:
        blur(18px);

    -webkit-backdrop-filter:
        blur(18px);

    border-bottom:
        1px solid var(--color-border);

    position: sticky;

    top: 0;

    z-index: 50;
}


.app-shell__brand--mobile[b-1mjdahjqbr] {
    padding: 0;
}


.app-shell__content[b-1mjdahjqbr] {
    padding:
        var(--spacing-8) var(--spacing-8) var(--spacing-16);
}


/* =========================================================
   BOTTOM NAV (mobile)
   ========================================================= */

.app-shell__bottom-nav[b-1mjdahjqbr] {
    display: none;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

    .app-shell[b-1mjdahjqbr] {
        flex-direction: column;
    }


    .app-shell__sidebar[b-1mjdahjqbr] {
        display: none;
    }


    .app-shell__topbar[b-1mjdahjqbr] {
        display: flex;
    }


    .app-shell__logout--mobile[b-1mjdahjqbr] {
        display: grid;
    }


    .app-shell__content[b-1mjdahjqbr] {
        padding:
            var(--spacing-5) var(--spacing-4)
            calc(var(--spacing-16) + 56px);
    }


    .app-shell__bottom-nav[b-1mjdahjqbr] {
        position: fixed;

        left: 0;
        right: 0;
        bottom: 0;

        z-index: 50;

        display: block;

        padding:
            6px
            max(6px, env(safe-area-inset-left))
            max(6px, env(safe-area-inset-bottom))
            max(6px, env(safe-area-inset-right));

        background:
            rgba(11, 14, 20, 0.92);

        backdrop-filter:
            blur(18px);

        -webkit-backdrop-filter:
            blur(18px);

        border-top:
            1px solid var(--color-border);
    }

}


@media (max-width: 560px) {

    .app-shell__content[b-1mjdahjqbr] {
        padding:
            var(--spacing-4) var(--spacing-3)
            calc(var(--spacing-12) + 56px);
    }

}
/* /Layout/AppNavMenu.razor.rz.scp.css */
.app-nav[b-1wte26xwni] {
    display: flex;
}


.app-nav__item[b-1wte26xwni] {
    display: flex;

    align-items: center;

    gap: 12px;

    color:
        var(--color-text-secondary);

    border-radius:
        var(--radius-md);

    font-size: 0.88rem;
    font-weight: 600;

    transition:
        color var(--transition-fast),
        background var(--transition-fast);
}


.app-nav__item:hover[b-1wte26xwni] {
    color:
        var(--color-text);

    background:
        var(--color-surface-hover);
}


.app-nav__item.active[b-1wte26xwni] {
    color:
        var(--color-primary);

    background:
        var(--color-primary-soft);
}


/* =========================================================
   SIDEBAR VARIANT (desktop)
   ========================================================= */

.app-nav--sidebar[b-1wte26xwni] {
    flex-direction: column;

    gap: 4px;
}


.app-nav--sidebar .app-nav__item[b-1wte26xwni] {
    padding:
        10px 12px;
}


/* =========================================================
   BOTTOM VARIANT (mobile)
   ========================================================= */

.app-nav--bottom[b-1wte26xwni] {
    flex-direction: row;

    justify-content: space-between;

    gap: 2px;
}


.app-nav--bottom .app-nav__item[b-1wte26xwni] {
    flex-direction: column;

    flex: 1;

    gap: 3px;

    padding:
        6px 2px;

    text-align: center;

    font-size: 0.66rem;

    font-weight: 600;
}


.app-nav--bottom .app-nav__item[b-1wte26xwni]  .app-icon {
    width: 21px;
    height: 21px;
}
/* /Layout/MainLayout.razor.rz.scp.css */
.main-layout[b-cs7hh8bsrn] {
    width: 100%;
    min-height: 100vh;
}


.main-layout__content[b-cs7hh8bsrn] {
    width: 100%;
    min-height: 100vh;
}
/* /Pages/Dashboard.razor.rz.scp.css */
.dashboard__greeting[b-1k59xiihyo] {
    color:
        var(--color-text);

    font-size: 1.6rem;
    font-weight: 800;

    letter-spacing: -0.02em;
}


.dashboard__subtitle[b-1k59xiihyo] {
    margin-top: 6px;

    color:
        var(--color-text-secondary);

    font-size: 0.92rem;
}


.dashboard__section[b-1k59xiihyo] {
    margin-top:
        var(--spacing-10);
}


.dashboard__section-header[b-1k59xiihyo] {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom:
        var(--spacing-4);
}


.dashboard__section-header h2[b-1k59xiihyo] {
    color:
        var(--color-text);

    font-size: 1.05rem;
    font-weight: 700;
}


.dashboard__section-header a[b-1k59xiihyo] {
    color:
        var(--color-primary);

    font-size: 0.85rem;
    font-weight: 600;
}


.dashboard__oppositions[b-1k59xiihyo] {
    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap:
        var(--spacing-4);
}


@media (max-width: 700px) {

    .dashboard__oppositions[b-1k59xiihyo] {
        grid-template-columns: 1fr;
    }

}
/* /Pages/Oppositions/OppositionDetail.razor.rz.scp.css */
.opposition-detail__header[b-ha4l16y2d7] {
    display: flex;
    flex-wrap: wrap;

    align-items: flex-start;
    justify-content: space-between;

    gap:
        var(--spacing-4);

    padding-bottom:
        var(--spacing-6);

    margin-bottom:
        var(--spacing-8);

    border-bottom:
        1px solid var(--color-border);
}


.opposition-detail__header h1[b-ha4l16y2d7] {
    color:
        var(--color-text);

    font-size: 1.4rem;
    font-weight: 800;

    letter-spacing: -0.02em;
}


.opposition-detail__header p[b-ha4l16y2d7] {
    margin-top: 4px;

    color:
        var(--color-text-secondary);

    font-size: 0.9rem;
}


.opposition-detail__header-actions[b-ha4l16y2d7] {
    display: flex;

    gap:
        var(--spacing-3);
}


.opposition-detail__edit-form[b-ha4l16y2d7] {
    display: flex;
    flex-direction: column;

    gap:
        var(--spacing-4);

    width: 100%;
    max-width: 480px;
}


.opposition-detail__edit-actions[b-ha4l16y2d7] {
    display: flex;

    gap:
        var(--spacing-3);
}


/* =========================================================
   TOPICS
   ========================================================= */

.opposition-detail__topics-header[b-ha4l16y2d7] {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom:
        var(--spacing-4);
}


.opposition-detail__topics-header h2[b-ha4l16y2d7] {
    color:
        var(--color-text);

    font-size: 1.05rem;
    font-weight: 700;
}


.opposition-detail__topics-header[b-ha4l16y2d7]  .app-button {
    display: inline-flex;

    align-items: center;

    gap: 6px;
}


.opposition-detail__topics-header[b-ha4l16y2d7]  .app-icon {
    width: 16px;
    height: 16px;
}


.opposition-detail__topics-list[b-ha4l16y2d7] {
    display: flex;
    flex-direction: column;

    gap:
        var(--spacing-2);
}
/* /Pages/Oppositions/OppositionForm.razor.rz.scp.css */
.opposition-form-page[b-l9y0m3c57s] {
    max-width: 520px;
}


.opposition-form-page h1[b-l9y0m3c57s] {
    color:
        var(--color-text);

    font-size: 1.4rem;
    font-weight: 800;

    letter-spacing: -0.02em;
}


.opposition-form-page > p[b-l9y0m3c57s] {
    margin-top: 4px;
    margin-bottom:
        var(--spacing-6);

    color:
        var(--color-text-secondary);

    font-size: 0.9rem;
}


.opposition-form-page__actions[b-l9y0m3c57s] {
    display: flex;

    gap:
        var(--spacing-3);

    margin-top:
        var(--spacing-2);
}


.opposition-form-page__actions[b-l9y0m3c57s]  .app-button {
    flex: 1;
}
/* /Pages/Oppositions/OppositionsList.razor.rz.scp.css */
.oppositions-page__header[b-s1rlnp8bdw] {
    display: flex;
    flex-wrap: wrap;

    align-items: center;
    justify-content: space-between;

    gap:
        var(--spacing-4);

    margin-bottom:
        var(--spacing-8);
}


.oppositions-page__header h1[b-s1rlnp8bdw] {
    color:
        var(--color-text);

    font-size: 1.4rem;
    font-weight: 800;

    letter-spacing: -0.02em;
}


.oppositions-page__header p[b-s1rlnp8bdw] {
    margin-top: 4px;

    color:
        var(--color-text-secondary);

    font-size: 0.9rem;
}


.oppositions-page__list[b-s1rlnp8bdw] {
    display: flex;
    flex-direction: column;

    gap:
        var(--spacing-3);
}
/* /Pages/Settings.razor.rz.scp.css */
.settings-page[b-6g0zll06gr] {
    max-width: 560px;
}


.settings-page h1[b-6g0zll06gr] {
    color:
        var(--color-text);

    font-size: 1.4rem;
    font-weight: 800;

    letter-spacing: -0.02em;
}


.settings-page > p[b-6g0zll06gr] {
    margin-top: 4px;
    margin-bottom:
        var(--spacing-8);

    color:
        var(--color-text-secondary);

    font-size: 0.9rem;
}


.settings-page__card[b-6g0zll06gr] {
    margin-bottom:
        var(--spacing-5);
}


.settings-page__card h2[b-6g0zll06gr] {
    margin-bottom:
        var(--spacing-4);

    color:
        var(--color-text);

    font-size: 1rem;
    font-weight: 700;
}


.settings-page__account[b-6g0zll06gr] {
    display: flex;
    flex-direction: column;

    gap:
        var(--spacing-3);

    margin-bottom:
        var(--spacing-6);
}


.settings-page__account dt[b-6g0zll06gr] {
    color:
        var(--color-text-muted);

    font-size: 0.76rem;
    font-weight: 700;

    letter-spacing: 0.04em;
    text-transform: uppercase;
}


.settings-page__account dd[b-6g0zll06gr] {
    margin: 0;

    color:
        var(--color-text);

    font-size: 0.94rem;
}


.settings-page__note[b-6g0zll06gr] {
    color:
        var(--color-text-muted);

    font-size: 0.86rem;
    line-height: 1.6;
}
