:root {
    --vantara-runtime-base: #edf3f8;
    --vantara-runtime-mid: #fbfdff;
    --vantara-runtime-border: rgba(15, 23, 42, 0.08);
    --vantara-runtime-shadow: 0 16px 42px rgba(15, 23, 42, 0.07);
    --vantara-runtime-ease: cubic-bezier(0.2, 0.8, 0.2, 1);
}

@keyframes vantara-runtime-wave {
    0% { background-position: 180% 0; }
    100% { background-position: -180% 0; }
}

@keyframes vantara-runtime-enter {
    from {
        opacity: 0;
        transform: translateY(10px) scale(0.985);
        filter: blur(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

@keyframes vantara-runtime-toast {
    0% { opacity: 0; transform: translateY(-8px) scale(0.975); }
    70% { opacity: 1; transform: translateY(2px) scale(1.01); }
    100% { opacity: 1; transform: translateY(0) scale(1); }
}

.vantara_runtime_skeleton {
    display: grid;
    gap: 14px;
    width: 100%;
}

.vantara_runtime_skeleton_hero,
.vantara_runtime_skeleton_card,
.vantara_runtime_skeleton_panel {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--vantara-runtime-border);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: var(--vantara-runtime-shadow);
}

.vantara_runtime_skeleton_hero {
    min-height: 148px;
    padding: 22px;
}

.vantara_runtime_skeleton_grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.vantara_runtime_skeleton_card {
    min-height: 126px;
    padding: 16px;
}

.vantara_runtime_skeleton_panel {
    min-height: 260px;
    padding: 18px;
}

.vantara_runtime_skeleton_line,
.vantara_runtime_skeleton_block,
.vantara_runtime_skeleton_pill,
.vantara_runtime_skeleton_avatar {
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        var(--vantara-runtime-base) 0%,
        var(--vantara-runtime-mid) 45%,
        var(--vantara-runtime-base) 100%
    );
    background-size: 220% 100%;
    animation: vantara-runtime-wave 1.25s ease-in-out infinite;
}

.vantara_runtime_skeleton_line {
    height: 12px;
    margin-bottom: 10px;
}

.vantara_runtime_skeleton_line.title {
    width: min(380px, 74%);
    height: 23px;
}

.vantara_runtime_skeleton_line.short { width: 36%; }
.vantara_runtime_skeleton_line.medium { width: 58%; }
.vantara_runtime_skeleton_line.long { width: 86%; }

.vantara_runtime_skeleton_block {
    height: 82px;
    border-radius: 16px;
}

.vantara_runtime_skeleton_pill {
    display: inline-block;
    width: 88px;
    height: 25px;
    margin-right: 8px;
}

.vantara_runtime_skeleton_avatar {
    width: 48px;
    height: 48px;
    border-radius: 15px;
}

.vantara_runtime_skeleton_row {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 118px;
    align-items: center;
    gap: 12px;
    padding: 13px 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.055);
}

.vantara_runtime_skeleton_row:last-child {
    border-bottom: 0;
}

.vantara_runtime_card_motion {
    animation: vantara-runtime-enter 340ms var(--vantara-runtime-ease) both;
    transition:
        transform 180ms var(--vantara-runtime-ease),
        box-shadow 180ms ease,
        border-color 180ms ease,
        background 180ms ease,
        opacity 180ms ease;
}

.vantara_runtime_card_motion:is(a, button, [role="button"], .clickable):where(:hover, :focus-visible) {
    transform: translateY(-2px);
}

.vantara_runtime_refreshing::after {
    content: "Atualizando...";
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 9000;
    padding: 9px 13px;
    border: 1px solid rgba(1, 69, 242, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    color: #0145f2;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.12);
    font-size: 0.72rem;
    font-weight: 800;
    animation: vantara-runtime-toast 220ms ease both;
}

.loading_box.vantara_runtime_loading_applied,
.perfil_loading.vantara_runtime_loading_applied,
.docs_loading.vantara_runtime_loading_applied,
.applications_loading.vantara_runtime_loading_applied,
.jobs_loading.vantara_runtime_loading_applied,
.feed_list.vantara_runtime_loading_applied,
.feed_state.vantara_runtime_loading_applied,
.lista_projetos.vantara_runtime_loading_applied,
.horizon_status_card.vantara_runtime_loading_applied,
.horizon_message.vantara_runtime_loading_applied,
.chat_messages_loading.vantara_runtime_loading_applied {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

@media (max-width: 780px) {
    .vantara_runtime_skeleton_grid {
        grid-template-columns: 1fr;
    }

    .vantara_runtime_skeleton_row {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .vantara_runtime_skeleton_row > .vantara_runtime_skeleton_line:last-child {
        grid-column: 2;
        width: 42%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .vantara_runtime_skeleton_line,
    .vantara_runtime_skeleton_block,
    .vantara_runtime_skeleton_pill,
    .vantara_runtime_skeleton_avatar,
    .vantara_runtime_card_motion,
    .vantara_runtime_refreshing::after {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        filter: none !important;
    }
}
