/* /Components/Layout/MainLayout.razor.rz.scp.css */
.fe-layout[b-jjtjlpxxr4] {
    min-height: 100vh;
}

.fe-appbar[b-jjtjlpxxr4] {
    background-color: #4e5d6c !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.fe-inicio-tab[b-jjtjlpxxr4] {
    font-weight: 600;
    letter-spacing: 0.02em;
    border-radius: 0 !important;
    padding: 0.45rem 1.15rem !important;
    min-height: 36px !important;
    margin-left: 0 !important;
    box-shadow: none !important;
}

.fe-main[b-jjtjlpxxr4] {
    flex: 1;
    min-height: calc(100vh - 48px);
    background-color: #dedede;
    background-image:
        repeating-linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.06) 0px,
            rgba(255, 255, 255, 0.06) 1px,
            transparent 1px,
            transparent 2px
        ),
        repeating-linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.018) 0px,
            rgba(0, 0, 0, 0.018) 1px,
            transparent 1px,
            transparent 3px
        );
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
#components-reconnect-modal[b-ylg7x15rku] {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1400;
    overflow: hidden;
    background-color: transparent;
    border: none;
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    padding: 0;
}

    #components-reconnect-modal[b-ylg7x15rku]::backdrop {
        background: rgba(10, 16, 28, 0.5);
    }

    #components-reconnect-modal.components-reconnect-show[b-ylg7x15rku],
    #components-reconnect-modal[open][b-ylg7x15rku],
    #components-reconnect-modal.components-reconnect-failed[b-ylg7x15rku],
    #components-reconnect-modal.components-reconnect-repeated-attempt[b-ylg7x15rku],
    #components-reconnect-modal.components-reconnect-paused[b-ylg7x15rku],
    #components-reconnect-modal.components-reconnect-resume-failed[b-ylg7x15rku],
    #components-reconnect-modal.components-pause[b-ylg7x15rku],
    #components-reconnect-modal.components-resume-failed[b-ylg7x15rku] {
        display: flex;
        align-items: center;
        justify-content: center;
    }

.components-reconnect-backdrop[b-ylg7x15rku] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: radial-gradient(90% 60% at 80% 0%, color-mix(in srgb, var(--mud-palette-primary, #594AE2) 12%, transparent), transparent 60%), radial-gradient(80% 55% at 0% 100%, color-mix(in srgb, var(--mud-palette-info, #2196f3) 16%, transparent), transparent 62%), rgba(8, 12, 20, 0.5);
}

.components-reconnect-surface[b-ylg7x15rku] {
    width: min(480px, 100%);
    border-radius: var(--mud-default-borderradius, 12px);
    border: 1px solid color-mix(in srgb, var(--mud-palette-lines-default, #e0e0e0) 70%, transparent);
    background: var(--mud-palette-surface, #fff);
    box-shadow: var(--mud-elevation-24, 0 16px 30px rgba(0, 0, 0, 0.28));
    color: var(--mud-palette-text-primary, #1f2937);
    padding: 20px 20px 18px;
}

.components-reconnect-header[b-ylg7x15rku] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

    .components-reconnect-header h2[b-ylg7x15rku] {
        margin: 0;
        font-size: 1.05rem;
        font-weight: 600;
        line-height: 1.3;
    }

.components-reconnect-status-dot[b-ylg7x15rku] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--mud-palette-warning, #f59e0b);
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--mud-palette-warning, #f59e0b) 25%, transparent);
}

.components-reconnect-supporting[b-ylg7x15rku],
.components-reconnect-message[b-ylg7x15rku] {
    margin: 0;
    line-height: 1.45;
    font-size: 0.95rem;
}

.components-reconnect-supporting[b-ylg7x15rku] {
    color: var(--mud-palette-text-secondary, #52607a);
    margin-bottom: 14px;
}

.components-reconnect-message[b-ylg7x15rku] {
    font-weight: 500;
}

.components-reconnect-danger[b-ylg7x15rku] {
    color: var(--mud-palette-error, #b00020);
}

.components-reconnect-actions[b-ylg7x15rku] {
    margin-top: 14px;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

.components-reconnect-first-attempt-visible[b-ylg7x15rku],
.components-reconnect-repeated-attempt-visible[b-ylg7x15rku],
.components-reconnect-failed-visible[b-ylg7x15rku],
.components-pause-visible[b-ylg7x15rku],
.components-resume-failed-visible[b-ylg7x15rku] {
    display: none;
}

dialog[open].components-reconnect-show .components-reconnect-first-attempt-visible[b-ylg7x15rku] {
    display: block;
}

dialog[open].components-reconnect-show .components-rejoin-loader[b-ylg7x15rku] {
    display: inline-flex;
}

dialog[open].components-reconnect-failed .components-reconnect-failed-visible[b-ylg7x15rku] {
    display: block;
}

dialog[open].components-reconnect-failed #components-reconnect-button[b-ylg7x15rku] {
    display: block;
}

dialog[open].components-reconnect-repeated-attempt .components-reconnect-repeated-attempt-visible[b-ylg7x15rku] {
    display: block;
}

dialog[open].components-reconnect-repeated-attempt .components-rejoin-loader[b-ylg7x15rku] {
    display: inline-flex;
}

dialog[open].components-reconnect-paused .components-pause-visible[b-ylg7x15rku],
dialog[open].components-pause .components-pause-visible[b-ylg7x15rku] {
    display: block;
}

dialog[open].components-reconnect-paused #components-resume-button[b-ylg7x15rku],
dialog[open].components-pause #components-resume-button[b-ylg7x15rku],
dialog[open].components-reconnect-resume-failed #components-resume-button[b-ylg7x15rku],
dialog[open].components-resume-failed #components-resume-button[b-ylg7x15rku] {
    display: block;
}

dialog[open].components-reconnect-resume-failed .components-resume-failed-visible[b-ylg7x15rku],
dialog[open].components-resume-failed .components-resume-failed-visible[b-ylg7x15rku] {
    display: block;
}

.components-rejoin-loader[b-ylg7x15rku] {
    display: none;
    margin-bottom: 10px;
    gap: 8px;
}

    .components-rejoin-loader div[b-ylg7x15rku] {
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background-color: var(--mud-palette-primary, #594AE2);
        animation: reconnect-pulse-b-ylg7x15rku 1.2s infinite ease-in-out both;
    }

        .components-rejoin-loader div:nth-child(1)[b-ylg7x15rku] {
            animation-delay: -0.24s;
        }

        .components-rejoin-loader div:nth-child(2)[b-ylg7x15rku] {
            animation-delay: -0.12s;
        }

@keyframes reconnect-pulse-b-ylg7x15rku {
    0%, 80%, 100% {
        transform: scale(0);
    }

    40% {
        transform: scale(1);
    }
}

#components-reconnect-button[b-ylg7x15rku],
#components-resume-button[b-ylg7x15rku] {
    display: none;
    min-width: 92px;
    cursor: pointer;
    padding: 8px 16px;
    border: 1px solid transparent;
    border-radius: 999px;
    background-color: var(--mud-palette-primary, #594AE2);
    color: #fff;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.2;
    transition: filter 140ms ease, transform 140ms ease;
}

    #components-reconnect-button:hover[b-ylg7x15rku],
    #components-resume-button:hover[b-ylg7x15rku] {
        filter: brightness(0.95);
    }

    #components-reconnect-button:active[b-ylg7x15rku],
    #components-resume-button:active[b-ylg7x15rku] {
        transform: translateY(1px);
    }

@media (max-width: 600px) {
    .components-reconnect-backdrop[b-ylg7x15rku] {
        padding: 14px;
    }

    .components-reconnect-surface[b-ylg7x15rku] {
        padding: 16px;
    }
}
/* /Components/Pages/DatosFacturacion.razor.rz.scp.css */
.fe-datos-loading[b-6mcs8cdtdk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 50vh;
    padding: 2rem;
}

.fe-datos-errores[b-6mcs8cdtdk] {
    max-width: 720px;
}

.fe-error-stack[b-6mcs8cdtdk] {
    font-size: 0.75rem;
    white-space: pre-wrap;
    word-break: break-word;
    margin: 0;
    max-height: 240px;
    overflow: auto;
}

.fe-datos-shell[b-6mcs8cdtdk] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 1rem 1.25rem 2rem;
}

.fe-datos-title[b-6mcs8cdtdk] {
    color: #1565c0;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1.25rem;
}

.fe-datos-estado[b-6mcs8cdtdk] {
    margin-bottom: 1rem;
}

.fe-datos-section-title[b-6mcs8cdtdk] {
    color: #1976d2;
    font-size: 1.15rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.fe-datos-subtitle[b-6mcs8cdtdk] {
    color: #424242;
    font-size: 1rem;
    font-weight: 600;
}

.fe-datos-resumen[b-6mcs8cdtdk] {
    border: 2px solid #2a2a2a !important;
    background: #fbfbfb;
    padding: 1.25rem 1.5rem 1.15rem;
    color: #2f5f83;
    font-size: 1.1rem;
    line-height: 1.45;
    font-weight: 500;
    max-width: 780px;
}

.fe-ticket-line[b-6mcs8cdtdk] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: 1.85rem;
    row-gap: 0.2rem;
}

.fe-ticket-line--head[b-6mcs8cdtdk] {
    margin-bottom: 0.55rem;
}

.fe-ticket-line--totals[b-6mcs8cdtdk] {
    margin-bottom: 0;
}

.fe-ticket-line--total-final[b-6mcs8cdtdk] {
    margin-top: -0.1rem;
}

.fe-ticket-item[b-6mcs8cdtdk] {
    display: inline-flex;
    align-items: baseline;
    white-space: nowrap;
    color: inherit;
}

.fe-ticket-item strong[b-6mcs8cdtdk] {
    margin-right: 0.28rem;
    font-weight: 700;
    color: inherit;
}

.fe-ticket-item--total[b-6mcs8cdtdk] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.05rem;
}

.fe-ticket-item--total strong[b-6mcs8cdtdk] {
    margin-right: 0;
}

.fe-ticket-total-valor[b-6mcs8cdtdk] {
    display: block;
}

@media (max-width: 960px) {
    .fe-datos-resumen[b-6mcs8cdtdk] {
        font-size: 1.05rem;
    }
}

@media (max-width: 600px) {
    .fe-datos-resumen[b-6mcs8cdtdk] {
        font-size: 1.1rem;
        line-height: 1.45;
        padding: 0.9rem 1rem;
    }

    .fe-ticket-line[b-6mcs8cdtdk] {
        column-gap: 1rem;
    }
}

.fe-datos-table[b-6mcs8cdtdk] {
    width: 100%;
}

/* Tabla de estudios (solo líneas horizontales, sin bordes verticales) */
.fe-estudios-wrap[b-6mcs8cdtdk] {
    margin-top: 1rem;
    padding-top: 0.75rem;
    border-top: 1px solid #e0e0e0;
}

.fe-estudios-table[b-6mcs8cdtdk] {
    width: 100%;
    border-collapse: collapse;
    font-family: inherit;
    font-size: 0.95rem;
    background-color: #f7f7f5;
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.35) 0%, rgba(0, 0, 0, 0.02) 100%);
}

.fe-estudios-table thead tr[b-6mcs8cdtdk] {
    border-bottom: 1px solid #e0e0e0;
}

.fe-estudios-table tbody tr[b-6mcs8cdtdk] {
    border-bottom: 1px solid #e0e0e0;
}

.fe-estudios-table tbody tr:last-child[b-6mcs8cdtdk] {
    border-bottom: none;
}

.fe-estudios-th[b-6mcs8cdtdk] {
    text-align: left;
    font-weight: 600;
    color: #777;
    padding: 12px 10px;
    vertical-align: bottom;
}

.fe-estudios-th--precio[b-6mcs8cdtdk] {
    text-align: right;
}

.fe-estudios-th--nombre[b-6mcs8cdtdk] {
    padding-left: 1.5rem;
}

.fe-estudios-td[b-6mcs8cdtdk] {
    color: #333;
    padding: 12px 10px;
    vertical-align: top;
}

.fe-estudios-td--nombre[b-6mcs8cdtdk] {
    padding-left: 1.5rem;
    text-transform: uppercase;
    font-weight: 500;
}

.fe-estudios-td--precio[b-6mcs8cdtdk] {
    text-align: right;
    white-space: nowrap;
}

.fe-estudios-vacio[b-6mcs8cdtdk] {
    text-align: center;
    color: #777;
    font-style: italic;
    padding: 1rem 10px !important;
}

.fe-datos-aviso[b-6mcs8cdtdk] {
    color: #e65100 !important;
    display: block;
    margin-top: -0.25rem;
    margin-bottom: 0.5rem;
}

.fe-dialog-msg[b-6mcs8cdtdk] {
    white-space: pre-wrap;
}

.fe-datos-redirect[b-6mcs8cdtdk] {
    max-width: 480px;
    margin: 3rem auto;
    padding: 1rem;
}
/* /Components/Pages/Home.razor.rz.scp.css */
.fe-shell[b-v7xppps9uu] {
    width: 100%;
    min-height: calc(100vh - 48px);
    display: flex;
    justify-content: center;
    padding: 2rem 1.25rem 2.5rem;
    box-sizing: border-box;
}

.fe-content[b-v7xppps9uu] {
    width: 100%;
    max-width: 560px;
    text-align: left;
}

.fe-page-title[b-v7xppps9uu] {
    margin: 0 0 0.75rem;
    font-size: clamp(1.35rem, 3.5vw, 1.65rem);
    font-weight: 700;
    color: #6699cc;
    line-height: 1.25;
    letter-spacing: 0.01em;
}

.fe-page-lead[b-v7xppps9uu] {
    margin: 0 0 1.5rem;
    color: #3a3a3a;
    font-size: 0.95rem;
    line-height: 1.55;
    font-weight: 400;
}

.fe-instruction[b-v7xppps9uu] {
    margin: 0;
    line-height: 1.5;
    font-size: 0.9rem;
}

.fe-instruction--accent[b-v7xppps9uu] {
    color: #7ba3d4;
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.fe-instruction--muted[b-v7xppps9uu] {
    color: #6b6b6b;
    font-size: 0.85rem;
    margin-bottom: 1.25rem;
}

.fe-form-fields[b-v7xppps9uu] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.fe-field-block[b-v7xppps9uu] {
    width: 100%;
}

/* Fecha: solo selección por calendario (Editable=false); refuerzo visual */
.fe-field-block--fecha[b-v7xppps9uu]  input.mud-input-root {
    cursor: pointer;
    caret-color: transparent;
    user-select: none;
}

/* Campos tipo caja simple: bordes casi rectos, fondo blanco */
.fe-field-classic[b-v7xppps9uu]  .mud-input-outlined-border {
    border-radius: 2px !important;
    border-color: #c4c4c4 !important;
}

.fe-field-classic[b-v7xppps9uu]  .mud-input-outlined:hover .mud-input-outlined-border {
    border-color: #6699cc !important;
}

.fe-field-classic[b-v7xppps9uu]  .mud-input > input.mud-input-root,
.fe-field-classic[b-v7xppps9uu]  textarea.mud-input-root {
    background-color: #ffffff !important;
    border-radius: 2px !important;
}

.fe-field-classic[b-v7xppps9uu]  .mud-input-label {
    font-weight: 600;
    font-size: 0.875rem;
    color: #333333 !important;
}

.fe-field-classic[b-v7xppps9uu]  .mud-input-helper-text {
    margin-top: 0.3rem;
    font-size: 0.75rem;
    color: #757575 !important;
}

/* Un solo mensaje de error (Mud); rojo consistente y clic para descartar (el contenedor ya maneja el evento). */
.fe-field-block[b-v7xppps9uu]  .mud-input-error .mud-input-helper-text {
    color: #c62828 !important;
    font-size: 0.8125rem;
    cursor: pointer;
}

.fe-actions[b-v7xppps9uu] {
    margin-top: 0.5rem;
    padding-top: 0.25rem;
}

/* Botón Adelante: fondo blanco, borde gris, texto oscuro */
.fe-btn-adelante[b-v7xppps9uu] {
    text-transform: none !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    border-radius: 2px !important;
    padding: 0.4rem 1.25rem !important;
    min-height: 34px !important;
    color: #1a1a1a !important;
    border: 1px solid #b0b0b0 !important;
    background-color: #ffffff !important;
    box-shadow: none !important;
}

.fe-btn-adelante:hover:not(:disabled)[b-v7xppps9uu] {
    background-color: #f5f5f5 !important;
    border-color: #999999 !important;
}

.fe-divider[b-v7xppps9uu] {
    margin: 2rem 0 1rem !important;
    border-color: #c8c8c8 !important;
}

.fe-copyright[b-v7xppps9uu] {
    margin: 0;
    text-align: center;
    font-size: 0.8rem;
    color: #7a7a7a;
}
