/* /Layout/MainLayout.razor.rz.scp.css */
/* ── Theme tokens ─────────────────────────────────────────────────────────── */

.wt-shell[b-eh8uwc1z90] {
    --wt-bg: #f0f3f8;
    --wt-surface: #fff;
    --wt-surface-2: #f5f7fc;
    --wt-text: #1a2035;
    --wt-text-muted: #6b7a99;
    --wt-border: #e5e9f0;
    --wt-primary-soft: color-mix(in srgb, var(--wt-primary, #0ea5e9) 12%, white);
    background: var(--wt-bg);
    color: var(--wt-text);
}

.wt-shell[data-theme="dark"][b-eh8uwc1z90] {
    --wt-bg: #0f1419;
    --wt-surface: #1a1f2e;
    --wt-surface-2: #252b3d;
    --wt-text: #e5e9f0;
    --wt-text-muted: #94a3b8;
    --wt-border: #2d3548;
    --wt-primary-soft: rgba(96, 165, 250, 0.18);
    --wt-primary-on-soft: #93c5fd;
}

@media (prefers-color-scheme: dark) {
    .wt-shell[data-theme="auto"][b-eh8uwc1z90] {
        --wt-bg: #0f1419;
        --wt-surface: #1a1f2e;
        --wt-surface-2: #252b3d;
        --wt-text: #e5e9f0;
        --wt-text-muted: #94a3b8;
        --wt-border: #2d3548;
        --wt-primary-soft: rgba(96, 165, 250, 0.18);
        --wt-primary-on-soft: #93c5fd;
    }
}

/* Por default (light), el texto sobre primary-soft es el primario brand */
.wt-shell[b-eh8uwc1z90] {
    --wt-primary-on-soft: var(--wt-primary, #0ea5e9);
}

/* ── Brand ─────────────────────────────────────────────────────────────────── */

.wt-brand[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 16px;
    height: 60px;
    border-bottom: 1px solid var(--wt-border);
    flex-shrink: 0;
}

.wt-brand-icon[b-eh8uwc1z90] {
    width: 32px;
    height: 32px;
    background: var(--wt-primary, #0ea5e9);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 14px;
    flex-shrink: 0;
}

/* Variant with logo: centered logo, no subtitle */
.wt-brand--logo[b-eh8uwc1z90] {
    align-items: center;
    justify-content: flex-start;
}

.wt-brand-logo[b-eh8uwc1z90] {
    max-width: 180px;
    max-height: 36px;
    object-fit: contain;
    object-position: left center;
}

/* Logo del tenant en dark mode: si el logo es oscuro sobre transparente,
   las partes oscuras desaparecen. Aplicamos un filtro suave para mejorar
   contraste sin distorsionar logos que ya están en color. */
.wt-shell[data-theme="dark"] .wt-brand-logo[b-eh8uwc1z90] {
    filter: brightness(0.95) contrast(1.05) drop-shadow(0 0 1px rgba(255,255,255,0.3));
}

@media (prefers-color-scheme: dark) {
    .wt-shell[data-theme="auto"] .wt-brand-logo[b-eh8uwc1z90] {
        filter: brightness(0.95) contrast(1.05) drop-shadow(0 0 1px rgba(255,255,255,0.3));
    }
}

.wt-brand-subtitle[b-eh8uwc1z90] {
    font-size: 10.5px;
    font-weight: 500;
    color: var(--wt-text-muted);
    letter-spacing: 0.3px;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.wt-brand-text[b-eh8uwc1z90] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.wt-brand-name[b-eh8uwc1z90] {
    font-size: 13px;
    font-weight: 600;
    color: var(--wt-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.wt-brand-tenant[b-eh8uwc1z90] {
    font-size: 11px;
    color: var(--wt-text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

/* ── Nav ──────────────────────────────────────────────────────────────────── */

.wt-nav[b-eh8uwc1z90] {
    flex: 1;
    overflow-y: auto;
    padding: 10px 8px;
}

.wt-nav-item[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 8px;
    color: var(--wt-text-muted);
    font-size: 13px;
    font-weight: 500;
    transition: background 0.12s, color 0.12s;
    margin-bottom: 2px;
    cursor: pointer;
    width: 100%;
    text-decoration: none;
}

.wt-nav-item:hover[b-eh8uwc1z90] {
    background: var(--wt-surface-2);
    color: var(--wt-text);
    text-decoration: none;
}

.wt-nav-item.active[b-eh8uwc1z90] {
    background: var(--wt-primary-soft);
    color: var(--wt-primary-on-soft);
    font-weight: 600;
}

.wt-nav-icon[b-eh8uwc1z90] {
    width: 18px;
    text-align: center;
    font-size: 14px;
    flex-shrink: 0;
    opacity: 0.75;
}

.wt-nav-item.active .wt-nav-icon[b-eh8uwc1z90],
.wt-nav-subitem.active .wt-nav-icon[b-eh8uwc1z90] {
    opacity: 1;
}

.wt-nav-label[b-eh8uwc1z90] {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wt-nav-group[b-eh8uwc1z90] {
    margin-bottom: 2px;
}

.wt-nav-group-toggle[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 8px;
    color: var(--wt-text-muted);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    width: 100%;
    border: none;
    background: transparent;
    text-align: left;
    transition: background 0.12s, color 0.12s;
    font-family: 'Graphik', 'Segoe UI', system-ui, sans-serif;
}

.wt-nav-group-toggle:hover[b-eh8uwc1z90] {
    background: var(--wt-surface-2);
    color: var(--wt-text);
}

.wt-nav-group-toggle.has-active[b-eh8uwc1z90] {
    color: var(--wt-primary-on-soft);
}

.wt-nav-group-toggle.has-active .wt-nav-icon[b-eh8uwc1z90] {
    opacity: 1;
}

.wt-nav-caret[b-eh8uwc1z90] {
    font-size: 10px;
    margin-left: auto;
    flex-shrink: 0;
    transition: transform 0.2s;
    opacity: 0.5;
}

.wt-nav-group-toggle.expanded .wt-nav-caret[b-eh8uwc1z90] {
    transform: rotate(180deg);
}

.wt-nav-submenu[b-eh8uwc1z90] {
    padding-left: 12px;
    margin-top: 2px;
}

.wt-nav-subitem[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 12px;
    border-radius: 8px;
    color: var(--wt-text-muted);
    font-size: 12.5px;
    font-weight: 500;
    transition: background 0.12s, color 0.12s;
    margin-bottom: 1px;
    text-decoration: none;
}

.wt-nav-subitem:hover[b-eh8uwc1z90] {
    background: var(--wt-surface-2);
    color: var(--wt-text);
    text-decoration: none;
}

.wt-nav-subitem.active[b-eh8uwc1z90] {
    background: var(--wt-primary-soft);
    color: var(--wt-primary-on-soft);
    font-weight: 600;
}

/* ── Nested sub-group (3rd level) ────────────────────────────────────────── */

.wt-nav-subgroup[b-eh8uwc1z90] {
    margin-bottom: 1px;
}

.wt-nav-subgroup-toggle[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 7px 12px;
    border-radius: 8px;
    color: var(--wt-text-muted);
    font-size: 12.5px;
    font-weight: 500;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    transition: background 0.12s, color 0.12s;
}

.wt-nav-subgroup-toggle:hover[b-eh8uwc1z90],
.wt-nav-subgroup-toggle.has-active[b-eh8uwc1z90] {
    background: var(--wt-surface-2);
    color: var(--wt-text);
}

.wt-nav-subgroup-toggle .wt-nav-caret[b-eh8uwc1z90] {
    margin-left: auto;
    transition: transform 0.2s;
    font-size: 9px;
    opacity: 0.6;
}

.wt-nav-subgroup-toggle.expanded .wt-nav-caret[b-eh8uwc1z90] {
    transform: rotate(180deg);
}

.wt-nav-subsubmenu[b-eh8uwc1z90] {
    padding-left: 14px;
    margin-top: 2px;
}

.wt-nav-leafitem[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 12px;
    border-radius: 8px;
    color: var(--wt-text-muted);
    font-size: 12px;
    font-weight: 500;
    transition: background 0.12s, color 0.12s;
    margin-bottom: 1px;
    text-decoration: none;
}

.wt-nav-leafitem:hover[b-eh8uwc1z90] {
    background: var(--wt-surface-2);
    color: var(--wt-text);
    text-decoration: none;
}

.wt-nav-leafitem.active[b-eh8uwc1z90] {
    background: var(--wt-primary-soft);
    color: var(--wt-primary-on-soft);
    font-weight: 600;
}

/* ── Sidebar footer ───────────────────────────────────────────────────────── */

.wt-sidebar-footer[b-eh8uwc1z90] {
    padding: 12px 14px;
    border-top: 1px solid var(--wt-border);
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.wt-user-avatar[b-eh8uwc1z90] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--wt-primary-soft);
    color: var(--wt-primary-on-soft);
    font-size: 12px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    user-select: none;
    overflow: hidden;
}

.wt-user-info[b-eh8uwc1z90] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.wt-user-name[b-eh8uwc1z90] {
    font-size: 12px;
    font-weight: 600;
    color: var(--wt-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.wt-user-sub[b-eh8uwc1z90] {
    font-size: 10px;
    color: #a0aec0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.wt-logout-btn[b-eh8uwc1z90] {
    background: none;
    border: none;
    cursor: pointer;
    color: #a0aec0;
    padding: 5px;
    border-radius: 6px;
    transition: color 0.12s, background 0.12s;
    font-size: 14px;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.wt-logout-btn:hover[b-eh8uwc1z90] {
    color: #dc2626;
    background: #fee2e2;
}

/* ── Topbar ───────────────────────────────────────────────────────────────── */

.wt-menu-toggle[b-eh8uwc1z90] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--wt-text-muted);
    font-size: 18px;
    padding: 4px;
    border-radius: 6px;
    line-height: 1;
    display: none;
}

.wt-topbar-spacer[b-eh8uwc1z90] {
    flex: 1;
}

.wt-topbar-actions[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.wt-tenant-badge[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    background: var(--wt-surface-2);
    border: 1px solid var(--wt-border);
    border-radius: 20px;
    font-size: 12px;
    color: var(--wt-text-muted);
}

/* ── User menu dropdown ─────────────────────────────────────────────────── */

.wt-user-menu[b-eh8uwc1z90] {
    position: relative;
}

.wt-user-menu-toggle[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 8px;
    background: none;
    border: none;
    transition: background 0.12s;
}

.wt-user-menu-toggle:hover[b-eh8uwc1z90] {
    background: var(--wt-surface-2);
}

.wt-user-menu-overlay[b-eh8uwc1z90] {
    position: fixed;
    inset: 0;
    z-index: 998;
    background: transparent;
}

.wt-user-name[b-eh8uwc1z90] {
    font-size: 12px;
    font-weight: 600;
    color: var(--wt-text);
    max-width: 110px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wt-user-chevron[b-eh8uwc1z90] {
    font-size: 10px;
    color: var(--wt-text-muted);
}

.wt-user-menu-header[b-eh8uwc1z90] {
    padding: 8px 12px 6px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.wt-user-menu-header-name[b-eh8uwc1z90] {
    font-size: 13px;
    font-weight: 600;
    color: var(--wt-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wt-user-menu-header-sub[b-eh8uwc1z90] {
    font-size: 11px;
    color: var(--wt-text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wt-user-menu-dropdown[b-eh8uwc1z90] {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 999;
    min-width: 200px;
    background: var(--wt-surface);
    border: 1px solid var(--wt-border);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(20, 30, 60, 0.12);
    padding: 6px;
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.wt-user-menu-item[b-eh8uwc1z90] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 13px;
    color: var(--wt-text);
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    width: 100%;
    transition: background 0.12s;
}

.wt-user-menu-item:hover[b-eh8uwc1z90] {
    background: var(--wt-surface-2);
    text-decoration: none;
    color: var(--wt-text);
}

.wt-user-menu-item i[b-eh8uwc1z90] {
    width: 16px;
    text-align: center;
    font-size: 14px;
    color: var(--wt-text-muted);
}

.wt-user-menu-item--danger[b-eh8uwc1z90] {
    color: #dc2626;
}

.wt-user-menu-item--danger:hover[b-eh8uwc1z90] {
    background: #fee2e2;
    color: #dc2626;
}

.wt-user-menu-item--danger i[b-eh8uwc1z90] {
    color: #dc2626;
}

.wt-user-menu-divider[b-eh8uwc1z90] {
    height: 1px;
    background: var(--wt-border);
    margin: 4px 0;
}

/* Theme switcher (light/dark/auto) */
.wt-theme-switcher[b-eh8uwc1z90] {
    display: flex;
    gap: 2px;
    padding: 4px;
    background: var(--wt-surface-2);
    border-radius: 8px;
    margin: 4px 0;
}

.wt-theme-option[b-eh8uwc1z90] {
    flex: 1;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    border-radius: 6px;
    color: var(--wt-text-muted);
    font-size: 13px;
    transition: background 0.12s, color 0.12s;
}

.wt-theme-option:hover[b-eh8uwc1z90] {
    color: var(--wt-text);
}

.wt-theme-option.active[b-eh8uwc1z90] {
    background: var(--wt-surface);
    color: var(--wt-primary, #0ea5e9);
    box-shadow: 0 1px 2px rgba(0,0,0,0.06);
}

/* Mobile overlay */
.wt-overlay[b-eh8uwc1z90] {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.4);
    z-index: 190;
}

/* ── Mobile ───────────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
    .wt-sidebar[b-eh8uwc1z90] {
        position: fixed !important;
        top: 0;
        left: 0;
        height: 100vh !important;
        transform: translateX(-100%);
        transition: transform 0.25s ease;
        z-index: 200;
    }

    .wt-sidebar.wt-sidebar--mobile-open[b-eh8uwc1z90] {
        transform: translateX(0);
    }

    .wt-overlay[b-eh8uwc1z90] {
        display: block;
    }

    .wt-menu-toggle[b-eh8uwc1z90] {
        display: flex !important;
    }
}
/* /Pages/Index.razor.rz.scp.css */
/* Getting-Started */
.card-bg-image[b-wqnimkkiux] {
    position: absolute;
    width: 630px;
    height: auto;
    bottom: 0;
    right: 0;
    z-index: 1;
}
/* Getting-Started End */

/* Write here your styles for the Index page */
/* /Pages/Portal/PortalLoginPage.razor.rz.scp.css */
.pl-shell[b-yucm677np2] {
    display: flex;
    height: 100vh;
    overflow: hidden;
}

/* ── Panel izquierdo: marca ───────────────────────────────────────────── */
.pl-left[b-yucm677np2] {
    flex: 0 0 45%;
    position: relative;
    background: linear-gradient(165deg, #232a38 0%, #10141d 45%, #000000 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 3rem;
    color: #fff;
    overflow: hidden;
}

.pl-left[b-yucm677np2]::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 15% 15%, rgba(14,165,233,0.22) 0%, transparent 50%),
        radial-gradient(circle at 90% 85%, rgba(14,165,233,0.14) 0%, transparent 50%);
}

.pl-left-content[b-yucm677np2] {
    position: relative;
    z-index: 1;
}

.pl-logo-row[b-yucm677np2] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 2.5rem;
}

.pl-icon[b-yucm677np2] {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    flex-shrink: 0;
}

.pl-brand[b-yucm677np2] {
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: 0.2px;
}

.pl-tagline[b-yucm677np2] {
    font-weight: 800;
    font-size: 1.75rem;
    color: #fff;
    line-height: 1.3;
    max-width: 340px;
    margin-bottom: 0.85rem;
}

.pl-tagline-accent[b-yucm677np2] {
    color: #0ea5e9;
}

.pl-subtitle[b-yucm677np2] {
    font-weight: 400;
    font-size: 0.95rem;
    color: rgba(255,255,255,0.55);
    line-height: 1.5;
    max-width: 320px;
}

.pl-footer[b-yucm677np2] {
    position: relative;
    z-index: 1;
    font-size: 0.78rem;
    color: rgba(255,255,255,0.4);
    margin-top: 2.5rem;
}

/* ── Panel derecho: formulario ────────────────────────────────────────── */
.pl-right[b-yucm677np2] {
    flex: 1;
    background: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    overflow-y: auto;
}

.pl-form-wrap[b-yucm677np2] {
    width: 100%;
    max-width: 360px;
}

.pl-form-header[b-yucm677np2] {
    margin-bottom: 2rem;
}

.pl-form-header h1[b-yucm677np2] {
    font-size: 1.65rem;
    font-weight: 600;
    color: #111827;
    margin-bottom: 0.35rem;
}

.pl-form-header p[b-yucm677np2] {
    font-size: 0.88rem;
    color: #6b7280;
}

.pl-code-hint[b-yucm677np2] {
    font-size: 0.88rem;
    color: #374151;
    margin-bottom: 1.5rem;
    line-height: 1.5;
}

.pl-field[b-yucm677np2] {
    margin-bottom: 1.25rem;
}

.pl-footer-note[b-yucm677np2] {
    margin-top: 2.5rem;
    text-align: center;
    border-top: 1px solid #f3f4f6;
    padding-top: 1.5rem;
    font-size: 0.78rem;
    color: #9ca3af;
}

@media (max-width: 768px) {
    .pl-left[b-yucm677np2] { display: none; }
    .pl-right[b-yucm677np2] { padding: 2rem 1.5rem; }
}
